package de.nordakademie.hausarbeit.crudframework.ui.contentassist.antlr.internal; 

import java.io.InputStream;
import org.eclipse.xtext.*;
import org.eclipse.xtext.parser.*;
import org.eclipse.xtext.parser.impl.*;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.xtext.parser.antlr.XtextTokenStream;
import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.DFA;
import de.nordakademie.hausarbeit.crudframework.services.DomainDslGrammarAccess;



import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;

@SuppressWarnings("all")
public class InternalDomainDslParser extends AbstractInternalContentAssistParser {
    public static final String[] tokenNames = new String[] {
        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_INT", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'String'", "'Integer'", "'Boolean'", "'Long'", "'application'", "'{'", "'}'", "'package'", "'datatype'", "'entity'", "'extends'", "'att'", "':'", "'.'", "'refs'", "'one'", "'many'", "'ref_by'"
    };
    public static final int RULE_ID=4;
    public static final int T__28=28;
    public static final int T__27=27;
    public static final int T__26=26;
    public static final int T__25=25;
    public static final int T__24=24;
    public static final int T__23=23;
    public static final int T__22=22;
    public static final int RULE_ANY_OTHER=10;
    public static final int T__21=21;
    public static final int T__20=20;
    public static final int RULE_SL_COMMENT=8;
    public static final int EOF=-1;
    public static final int RULE_ML_COMMENT=7;
    public static final int T__19=19;
    public static final int RULE_STRING=6;
    public static final int T__16=16;
    public static final int T__15=15;
    public static final int T__18=18;
    public static final int T__17=17;
    public static final int T__12=12;
    public static final int T__11=11;
    public static final int T__14=14;
    public static final int T__13=13;
    public static final int RULE_INT=5;
    public static final int RULE_WS=9;

    // delegates
    // delegators


        public InternalDomainDslParser(TokenStream input) {
            this(input, new RecognizerSharedState());
        }
        public InternalDomainDslParser(TokenStream input, RecognizerSharedState state) {
            super(input, state);
             
        }
        

    public String[] getTokenNames() { return InternalDomainDslParser.tokenNames; }
    public String getGrammarFileName() { return "../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g"; }


     
     	private DomainDslGrammarAccess grammarAccess;
     	
        public void setGrammarAccess(DomainDslGrammarAccess grammarAccess) {
        	this.grammarAccess = grammarAccess;
        }
        
        @Override
        protected Grammar getGrammar() {
        	return grammarAccess.getGrammar();
        }
        
        @Override
        protected String getValueForTokenName(String tokenName) {
        	return tokenName;
        }




    // $ANTLR start "entryRuleApplication"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:60:1: entryRuleApplication : ruleApplication EOF ;
    public final void entryRuleApplication() throws RecognitionException {
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:61:1: ( ruleApplication EOF )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:62:1: ruleApplication EOF
            {
             before(grammarAccess.getApplicationRule()); 
            pushFollow(FOLLOW_ruleApplication_in_entryRuleApplication61);
            ruleApplication();

            state._fsp--;

             after(grammarAccess.getApplicationRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleApplication68); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleApplication"


    // $ANTLR start "ruleApplication"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:69:1: ruleApplication : ( ( rule__Application__Group__0 ) ) ;
    public final void ruleApplication() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:73:2: ( ( ( rule__Application__Group__0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:74:1: ( ( rule__Application__Group__0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:74:1: ( ( rule__Application__Group__0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:75:1: ( rule__Application__Group__0 )
            {
             before(grammarAccess.getApplicationAccess().getGroup()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:76:1: ( rule__Application__Group__0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:76:2: rule__Application__Group__0
            {
            pushFollow(FOLLOW_rule__Application__Group__0_in_ruleApplication94);
            rule__Application__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getApplicationAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleApplication"


    // $ANTLR start "entryRulePackageDeclaration"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:88:1: entryRulePackageDeclaration : rulePackageDeclaration EOF ;
    public final void entryRulePackageDeclaration() throws RecognitionException {
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:89:1: ( rulePackageDeclaration EOF )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:90:1: rulePackageDeclaration EOF
            {
             before(grammarAccess.getPackageDeclarationRule()); 
            pushFollow(FOLLOW_rulePackageDeclaration_in_entryRulePackageDeclaration121);
            rulePackageDeclaration();

            state._fsp--;

             after(grammarAccess.getPackageDeclarationRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRulePackageDeclaration128); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRulePackageDeclaration"


    // $ANTLR start "rulePackageDeclaration"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:97:1: rulePackageDeclaration : ( ( rule__PackageDeclaration__Group__0 ) ) ;
    public final void rulePackageDeclaration() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:101:2: ( ( ( rule__PackageDeclaration__Group__0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:102:1: ( ( rule__PackageDeclaration__Group__0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:102:1: ( ( rule__PackageDeclaration__Group__0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:103:1: ( rule__PackageDeclaration__Group__0 )
            {
             before(grammarAccess.getPackageDeclarationAccess().getGroup()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:104:1: ( rule__PackageDeclaration__Group__0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:104:2: rule__PackageDeclaration__Group__0
            {
            pushFollow(FOLLOW_rule__PackageDeclaration__Group__0_in_rulePackageDeclaration154);
            rule__PackageDeclaration__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getPackageDeclarationAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rulePackageDeclaration"


    // $ANTLR start "entryRuleDataType"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:118:1: entryRuleDataType : ruleDataType EOF ;
    public final void entryRuleDataType() throws RecognitionException {
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:119:1: ( ruleDataType EOF )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:120:1: ruleDataType EOF
            {
             before(grammarAccess.getDataTypeRule()); 
            pushFollow(FOLLOW_ruleDataType_in_entryRuleDataType183);
            ruleDataType();

            state._fsp--;

             after(grammarAccess.getDataTypeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleDataType190); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleDataType"


    // $ANTLR start "ruleDataType"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:127:1: ruleDataType : ( ( rule__DataType__Group__0 ) ) ;
    public final void ruleDataType() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:131:2: ( ( ( rule__DataType__Group__0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:132:1: ( ( rule__DataType__Group__0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:132:1: ( ( rule__DataType__Group__0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:133:1: ( rule__DataType__Group__0 )
            {
             before(grammarAccess.getDataTypeAccess().getGroup()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:134:1: ( rule__DataType__Group__0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:134:2: rule__DataType__Group__0
            {
            pushFollow(FOLLOW_rule__DataType__Group__0_in_ruleDataType216);
            rule__DataType__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getDataTypeAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleDataType"


    // $ANTLR start "entryRuleEntity"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:146:1: entryRuleEntity : ruleEntity EOF ;
    public final void entryRuleEntity() throws RecognitionException {
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:147:1: ( ruleEntity EOF )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:148:1: ruleEntity EOF
            {
             before(grammarAccess.getEntityRule()); 
            pushFollow(FOLLOW_ruleEntity_in_entryRuleEntity243);
            ruleEntity();

            state._fsp--;

             after(grammarAccess.getEntityRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleEntity250); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleEntity"


    // $ANTLR start "ruleEntity"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:155:1: ruleEntity : ( ( rule__Entity__Group__0 ) ) ;
    public final void ruleEntity() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:159:2: ( ( ( rule__Entity__Group__0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:160:1: ( ( rule__Entity__Group__0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:160:1: ( ( rule__Entity__Group__0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:161:1: ( rule__Entity__Group__0 )
            {
             before(grammarAccess.getEntityAccess().getGroup()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:162:1: ( rule__Entity__Group__0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:162:2: rule__Entity__Group__0
            {
            pushFollow(FOLLOW_rule__Entity__Group__0_in_ruleEntity276);
            rule__Entity__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getEntityAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleEntity"


    // $ANTLR start "entryRuleAttribute"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:174:1: entryRuleAttribute : ruleAttribute EOF ;
    public final void entryRuleAttribute() throws RecognitionException {
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:175:1: ( ruleAttribute EOF )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:176:1: ruleAttribute EOF
            {
             before(grammarAccess.getAttributeRule()); 
            pushFollow(FOLLOW_ruleAttribute_in_entryRuleAttribute303);
            ruleAttribute();

            state._fsp--;

             after(grammarAccess.getAttributeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleAttribute310); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleAttribute"


    // $ANTLR start "ruleAttribute"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:183:1: ruleAttribute : ( ( rule__Attribute__Alternatives ) ) ;
    public final void ruleAttribute() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:187:2: ( ( ( rule__Attribute__Alternatives ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:188:1: ( ( rule__Attribute__Alternatives ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:188:1: ( ( rule__Attribute__Alternatives ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:189:1: ( rule__Attribute__Alternatives )
            {
             before(grammarAccess.getAttributeAccess().getAlternatives()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:190:1: ( rule__Attribute__Alternatives )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:190:2: rule__Attribute__Alternatives
            {
            pushFollow(FOLLOW_rule__Attribute__Alternatives_in_ruleAttribute336);
            rule__Attribute__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getAttributeAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleAttribute"


    // $ANTLR start "entryRuleSimpleAttribute"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:202:1: entryRuleSimpleAttribute : ruleSimpleAttribute EOF ;
    public final void entryRuleSimpleAttribute() throws RecognitionException {
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:203:1: ( ruleSimpleAttribute EOF )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:204:1: ruleSimpleAttribute EOF
            {
             before(grammarAccess.getSimpleAttributeRule()); 
            pushFollow(FOLLOW_ruleSimpleAttribute_in_entryRuleSimpleAttribute363);
            ruleSimpleAttribute();

            state._fsp--;

             after(grammarAccess.getSimpleAttributeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleSimpleAttribute370); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleSimpleAttribute"


    // $ANTLR start "ruleSimpleAttribute"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:211:1: ruleSimpleAttribute : ( ( rule__SimpleAttribute__Group__0 ) ) ;
    public final void ruleSimpleAttribute() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:215:2: ( ( ( rule__SimpleAttribute__Group__0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:216:1: ( ( rule__SimpleAttribute__Group__0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:216:1: ( ( rule__SimpleAttribute__Group__0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:217:1: ( rule__SimpleAttribute__Group__0 )
            {
             before(grammarAccess.getSimpleAttributeAccess().getGroup()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:218:1: ( rule__SimpleAttribute__Group__0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:218:2: rule__SimpleAttribute__Group__0
            {
            pushFollow(FOLLOW_rule__SimpleAttribute__Group__0_in_ruleSimpleAttribute396);
            rule__SimpleAttribute__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getSimpleAttributeAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleSimpleAttribute"


    // $ANTLR start "entryRuleRefAttribute"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:230:1: entryRuleRefAttribute : ruleRefAttribute EOF ;
    public final void entryRuleRefAttribute() throws RecognitionException {
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:231:1: ( ruleRefAttribute EOF )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:232:1: ruleRefAttribute EOF
            {
             before(grammarAccess.getRefAttributeRule()); 
            pushFollow(FOLLOW_ruleRefAttribute_in_entryRuleRefAttribute423);
            ruleRefAttribute();

            state._fsp--;

             after(grammarAccess.getRefAttributeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleRefAttribute430); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleRefAttribute"


    // $ANTLR start "ruleRefAttribute"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:239:1: ruleRefAttribute : ( ( rule__RefAttribute__Group__0 ) ) ;
    public final void ruleRefAttribute() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:243:2: ( ( ( rule__RefAttribute__Group__0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:244:1: ( ( rule__RefAttribute__Group__0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:244:1: ( ( rule__RefAttribute__Group__0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:245:1: ( rule__RefAttribute__Group__0 )
            {
             before(grammarAccess.getRefAttributeAccess().getGroup()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:246:1: ( rule__RefAttribute__Group__0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:246:2: rule__RefAttribute__Group__0
            {
            pushFollow(FOLLOW_rule__RefAttribute__Group__0_in_ruleRefAttribute456);
            rule__RefAttribute__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getRefAttributeAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleRefAttribute"


    // $ANTLR start "entryRuleRefByAttribute"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:258:1: entryRuleRefByAttribute : ruleRefByAttribute EOF ;
    public final void entryRuleRefByAttribute() throws RecognitionException {
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:259:1: ( ruleRefByAttribute EOF )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:260:1: ruleRefByAttribute EOF
            {
             before(grammarAccess.getRefByAttributeRule()); 
            pushFollow(FOLLOW_ruleRefByAttribute_in_entryRuleRefByAttribute483);
            ruleRefByAttribute();

            state._fsp--;

             after(grammarAccess.getRefByAttributeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleRefByAttribute490); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleRefByAttribute"


    // $ANTLR start "ruleRefByAttribute"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:267:1: ruleRefByAttribute : ( ( rule__RefByAttribute__Group__0 ) ) ;
    public final void ruleRefByAttribute() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:271:2: ( ( ( rule__RefByAttribute__Group__0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:272:1: ( ( rule__RefByAttribute__Group__0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:272:1: ( ( rule__RefByAttribute__Group__0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:273:1: ( rule__RefByAttribute__Group__0 )
            {
             before(grammarAccess.getRefByAttributeAccess().getGroup()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:274:1: ( rule__RefByAttribute__Group__0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:274:2: rule__RefByAttribute__Group__0
            {
            pushFollow(FOLLOW_rule__RefByAttribute__Group__0_in_ruleRefByAttribute516);
            rule__RefByAttribute__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getRefByAttributeAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleRefByAttribute"


    // $ANTLR start "entryRuleQualifiedName"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:286:1: entryRuleQualifiedName : ruleQualifiedName EOF ;
    public final void entryRuleQualifiedName() throws RecognitionException {
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:287:1: ( ruleQualifiedName EOF )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:288:1: ruleQualifiedName EOF
            {
             before(grammarAccess.getQualifiedNameRule()); 
            pushFollow(FOLLOW_ruleQualifiedName_in_entryRuleQualifiedName543);
            ruleQualifiedName();

            state._fsp--;

             after(grammarAccess.getQualifiedNameRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleQualifiedName550); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleQualifiedName"


    // $ANTLR start "ruleQualifiedName"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:295:1: ruleQualifiedName : ( ( rule__QualifiedName__Group__0 ) ) ;
    public final void ruleQualifiedName() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:299:2: ( ( ( rule__QualifiedName__Group__0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:300:1: ( ( rule__QualifiedName__Group__0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:300:1: ( ( rule__QualifiedName__Group__0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:301:1: ( rule__QualifiedName__Group__0 )
            {
             before(grammarAccess.getQualifiedNameAccess().getGroup()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:302:1: ( rule__QualifiedName__Group__0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:302:2: rule__QualifiedName__Group__0
            {
            pushFollow(FOLLOW_rule__QualifiedName__Group__0_in_ruleQualifiedName576);
            rule__QualifiedName__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getQualifiedNameAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleQualifiedName"


    // $ANTLR start "rule__Attribute__Alternatives"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:315:1: rule__Attribute__Alternatives : ( ( ruleSimpleAttribute ) | ( ruleRefAttribute ) | ( ruleRefByAttribute ) );
    public final void rule__Attribute__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:319:1: ( ( ruleSimpleAttribute ) | ( ruleRefAttribute ) | ( ruleRefByAttribute ) )
            int alt1=3;
            int LA1_0 = input.LA(1);

            if ( (LA1_0==22) ) {
                alt1=1;
            }
            else if ( (LA1_0==RULE_ID) ) {
                int LA1_2 = input.LA(2);

                if ( (LA1_2==28) ) {
                    alt1=3;
                }
                else if ( (LA1_2==25) ) {
                    alt1=2;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 1, 2, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 1, 0, input);

                throw nvae;
            }
            switch (alt1) {
                case 1 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:320:1: ( ruleSimpleAttribute )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:320:1: ( ruleSimpleAttribute )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:321:1: ruleSimpleAttribute
                    {
                     before(grammarAccess.getAttributeAccess().getSimpleAttributeParserRuleCall_0()); 
                    pushFollow(FOLLOW_ruleSimpleAttribute_in_rule__Attribute__Alternatives613);
                    ruleSimpleAttribute();

                    state._fsp--;

                     after(grammarAccess.getAttributeAccess().getSimpleAttributeParserRuleCall_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:326:6: ( ruleRefAttribute )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:326:6: ( ruleRefAttribute )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:327:1: ruleRefAttribute
                    {
                     before(grammarAccess.getAttributeAccess().getRefAttributeParserRuleCall_1()); 
                    pushFollow(FOLLOW_ruleRefAttribute_in_rule__Attribute__Alternatives630);
                    ruleRefAttribute();

                    state._fsp--;

                     after(grammarAccess.getAttributeAccess().getRefAttributeParserRuleCall_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:332:6: ( ruleRefByAttribute )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:332:6: ( ruleRefByAttribute )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:333:1: ruleRefByAttribute
                    {
                     before(grammarAccess.getAttributeAccess().getRefByAttributeParserRuleCall_2()); 
                    pushFollow(FOLLOW_ruleRefByAttribute_in_rule__Attribute__Alternatives647);
                    ruleRefByAttribute();

                    state._fsp--;

                     after(grammarAccess.getAttributeAccess().getRefByAttributeParserRuleCall_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Attribute__Alternatives"


    // $ANTLR start "rule__SimpleAttribute__TypeAlternatives_3_0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:343:1: rule__SimpleAttribute__TypeAlternatives_3_0 : ( ( 'String' ) | ( 'Integer' ) | ( 'Boolean' ) | ( 'Long' ) );
    public final void rule__SimpleAttribute__TypeAlternatives_3_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:347:1: ( ( 'String' ) | ( 'Integer' ) | ( 'Boolean' ) | ( 'Long' ) )
            int alt2=4;
            switch ( input.LA(1) ) {
            case 11:
                {
                alt2=1;
                }
                break;
            case 12:
                {
                alt2=2;
                }
                break;
            case 13:
                {
                alt2=3;
                }
                break;
            case 14:
                {
                alt2=4;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 2, 0, input);

                throw nvae;
            }

            switch (alt2) {
                case 1 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:348:1: ( 'String' )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:348:1: ( 'String' )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:349:1: 'String'
                    {
                     before(grammarAccess.getSimpleAttributeAccess().getTypeStringKeyword_3_0_0()); 
                    match(input,11,FOLLOW_11_in_rule__SimpleAttribute__TypeAlternatives_3_0680); 
                     after(grammarAccess.getSimpleAttributeAccess().getTypeStringKeyword_3_0_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:356:6: ( 'Integer' )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:356:6: ( 'Integer' )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:357:1: 'Integer'
                    {
                     before(grammarAccess.getSimpleAttributeAccess().getTypeIntegerKeyword_3_0_1()); 
                    match(input,12,FOLLOW_12_in_rule__SimpleAttribute__TypeAlternatives_3_0700); 
                     after(grammarAccess.getSimpleAttributeAccess().getTypeIntegerKeyword_3_0_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:364:6: ( 'Boolean' )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:364:6: ( 'Boolean' )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:365:1: 'Boolean'
                    {
                     before(grammarAccess.getSimpleAttributeAccess().getTypeBooleanKeyword_3_0_2()); 
                    match(input,13,FOLLOW_13_in_rule__SimpleAttribute__TypeAlternatives_3_0720); 
                     after(grammarAccess.getSimpleAttributeAccess().getTypeBooleanKeyword_3_0_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:372:6: ( 'Long' )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:372:6: ( 'Long' )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:373:1: 'Long'
                    {
                     before(grammarAccess.getSimpleAttributeAccess().getTypeLongKeyword_3_0_3()); 
                    match(input,14,FOLLOW_14_in_rule__SimpleAttribute__TypeAlternatives_3_0740); 
                     after(grammarAccess.getSimpleAttributeAccess().getTypeLongKeyword_3_0_3()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__TypeAlternatives_3_0"


    // $ANTLR start "rule__RefAttribute__Alternatives_2"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:385:1: rule__RefAttribute__Alternatives_2 : ( ( ( rule__RefAttribute__OneAssignment_2_0 ) ) | ( ( rule__RefAttribute__ManyAssignment_2_1 ) ) );
    public final void rule__RefAttribute__Alternatives_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:389:1: ( ( ( rule__RefAttribute__OneAssignment_2_0 ) ) | ( ( rule__RefAttribute__ManyAssignment_2_1 ) ) )
            int alt3=2;
            int LA3_0 = input.LA(1);

            if ( (LA3_0==26) ) {
                alt3=1;
            }
            else if ( (LA3_0==27) ) {
                alt3=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 3, 0, input);

                throw nvae;
            }
            switch (alt3) {
                case 1 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:390:1: ( ( rule__RefAttribute__OneAssignment_2_0 ) )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:390:1: ( ( rule__RefAttribute__OneAssignment_2_0 ) )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:391:1: ( rule__RefAttribute__OneAssignment_2_0 )
                    {
                     before(grammarAccess.getRefAttributeAccess().getOneAssignment_2_0()); 
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:392:1: ( rule__RefAttribute__OneAssignment_2_0 )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:392:2: rule__RefAttribute__OneAssignment_2_0
                    {
                    pushFollow(FOLLOW_rule__RefAttribute__OneAssignment_2_0_in_rule__RefAttribute__Alternatives_2774);
                    rule__RefAttribute__OneAssignment_2_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getRefAttributeAccess().getOneAssignment_2_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:396:6: ( ( rule__RefAttribute__ManyAssignment_2_1 ) )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:396:6: ( ( rule__RefAttribute__ManyAssignment_2_1 ) )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:397:1: ( rule__RefAttribute__ManyAssignment_2_1 )
                    {
                     before(grammarAccess.getRefAttributeAccess().getManyAssignment_2_1()); 
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:398:1: ( rule__RefAttribute__ManyAssignment_2_1 )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:398:2: rule__RefAttribute__ManyAssignment_2_1
                    {
                    pushFollow(FOLLOW_rule__RefAttribute__ManyAssignment_2_1_in_rule__RefAttribute__Alternatives_2792);
                    rule__RefAttribute__ManyAssignment_2_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getRefAttributeAccess().getManyAssignment_2_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__Alternatives_2"


    // $ANTLR start "rule__RefByAttribute__Alternatives_2"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:407:1: rule__RefByAttribute__Alternatives_2 : ( ( ( rule__RefByAttribute__OneAssignment_2_0 ) ) | ( ( rule__RefByAttribute__ManyAssignment_2_1 ) ) );
    public final void rule__RefByAttribute__Alternatives_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:411:1: ( ( ( rule__RefByAttribute__OneAssignment_2_0 ) ) | ( ( rule__RefByAttribute__ManyAssignment_2_1 ) ) )
            int alt4=2;
            int LA4_0 = input.LA(1);

            if ( (LA4_0==26) ) {
                alt4=1;
            }
            else if ( (LA4_0==27) ) {
                alt4=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 4, 0, input);

                throw nvae;
            }
            switch (alt4) {
                case 1 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:412:1: ( ( rule__RefByAttribute__OneAssignment_2_0 ) )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:412:1: ( ( rule__RefByAttribute__OneAssignment_2_0 ) )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:413:1: ( rule__RefByAttribute__OneAssignment_2_0 )
                    {
                     before(grammarAccess.getRefByAttributeAccess().getOneAssignment_2_0()); 
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:414:1: ( rule__RefByAttribute__OneAssignment_2_0 )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:414:2: rule__RefByAttribute__OneAssignment_2_0
                    {
                    pushFollow(FOLLOW_rule__RefByAttribute__OneAssignment_2_0_in_rule__RefByAttribute__Alternatives_2825);
                    rule__RefByAttribute__OneAssignment_2_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getRefByAttributeAccess().getOneAssignment_2_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:418:6: ( ( rule__RefByAttribute__ManyAssignment_2_1 ) )
                    {
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:418:6: ( ( rule__RefByAttribute__ManyAssignment_2_1 ) )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:419:1: ( rule__RefByAttribute__ManyAssignment_2_1 )
                    {
                     before(grammarAccess.getRefByAttributeAccess().getManyAssignment_2_1()); 
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:420:1: ( rule__RefByAttribute__ManyAssignment_2_1 )
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:420:2: rule__RefByAttribute__ManyAssignment_2_1
                    {
                    pushFollow(FOLLOW_rule__RefByAttribute__ManyAssignment_2_1_in_rule__RefByAttribute__Alternatives_2843);
                    rule__RefByAttribute__ManyAssignment_2_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getRefByAttributeAccess().getManyAssignment_2_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__Alternatives_2"


    // $ANTLR start "rule__Application__Group__0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:431:1: rule__Application__Group__0 : rule__Application__Group__0__Impl rule__Application__Group__1 ;
    public final void rule__Application__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:435:1: ( rule__Application__Group__0__Impl rule__Application__Group__1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:436:2: rule__Application__Group__0__Impl rule__Application__Group__1
            {
            pushFollow(FOLLOW_rule__Application__Group__0__Impl_in_rule__Application__Group__0874);
            rule__Application__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Application__Group__1_in_rule__Application__Group__0877);
            rule__Application__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__Group__0"


    // $ANTLR start "rule__Application__Group__0__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:443:1: rule__Application__Group__0__Impl : ( 'application' ) ;
    public final void rule__Application__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:447:1: ( ( 'application' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:448:1: ( 'application' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:448:1: ( 'application' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:449:1: 'application'
            {
             before(grammarAccess.getApplicationAccess().getApplicationKeyword_0()); 
            match(input,15,FOLLOW_15_in_rule__Application__Group__0__Impl905); 
             after(grammarAccess.getApplicationAccess().getApplicationKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__Group__0__Impl"


    // $ANTLR start "rule__Application__Group__1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:462:1: rule__Application__Group__1 : rule__Application__Group__1__Impl rule__Application__Group__2 ;
    public final void rule__Application__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:466:1: ( rule__Application__Group__1__Impl rule__Application__Group__2 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:467:2: rule__Application__Group__1__Impl rule__Application__Group__2
            {
            pushFollow(FOLLOW_rule__Application__Group__1__Impl_in_rule__Application__Group__1936);
            rule__Application__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Application__Group__2_in_rule__Application__Group__1939);
            rule__Application__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__Group__1"


    // $ANTLR start "rule__Application__Group__1__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:474:1: rule__Application__Group__1__Impl : ( ( rule__Application__NameAssignment_1 ) ) ;
    public final void rule__Application__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:478:1: ( ( ( rule__Application__NameAssignment_1 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:479:1: ( ( rule__Application__NameAssignment_1 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:479:1: ( ( rule__Application__NameAssignment_1 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:480:1: ( rule__Application__NameAssignment_1 )
            {
             before(grammarAccess.getApplicationAccess().getNameAssignment_1()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:481:1: ( rule__Application__NameAssignment_1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:481:2: rule__Application__NameAssignment_1
            {
            pushFollow(FOLLOW_rule__Application__NameAssignment_1_in_rule__Application__Group__1__Impl966);
            rule__Application__NameAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getApplicationAccess().getNameAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__Group__1__Impl"


    // $ANTLR start "rule__Application__Group__2"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:491:1: rule__Application__Group__2 : rule__Application__Group__2__Impl rule__Application__Group__3 ;
    public final void rule__Application__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:495:1: ( rule__Application__Group__2__Impl rule__Application__Group__3 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:496:2: rule__Application__Group__2__Impl rule__Application__Group__3
            {
            pushFollow(FOLLOW_rule__Application__Group__2__Impl_in_rule__Application__Group__2996);
            rule__Application__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Application__Group__3_in_rule__Application__Group__2999);
            rule__Application__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__Group__2"


    // $ANTLR start "rule__Application__Group__2__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:503:1: rule__Application__Group__2__Impl : ( '{' ) ;
    public final void rule__Application__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:507:1: ( ( '{' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:508:1: ( '{' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:508:1: ( '{' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:509:1: '{'
            {
             before(grammarAccess.getApplicationAccess().getLeftCurlyBracketKeyword_2()); 
            match(input,16,FOLLOW_16_in_rule__Application__Group__2__Impl1027); 
             after(grammarAccess.getApplicationAccess().getLeftCurlyBracketKeyword_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__Group__2__Impl"


    // $ANTLR start "rule__Application__Group__3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:522:1: rule__Application__Group__3 : rule__Application__Group__3__Impl rule__Application__Group__4 ;
    public final void rule__Application__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:526:1: ( rule__Application__Group__3__Impl rule__Application__Group__4 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:527:2: rule__Application__Group__3__Impl rule__Application__Group__4
            {
            pushFollow(FOLLOW_rule__Application__Group__3__Impl_in_rule__Application__Group__31058);
            rule__Application__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Application__Group__4_in_rule__Application__Group__31061);
            rule__Application__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__Group__3"


    // $ANTLR start "rule__Application__Group__3__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:534:1: rule__Application__Group__3__Impl : ( ( rule__Application__PackageDeclarationsAssignment_3 )* ) ;
    public final void rule__Application__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:538:1: ( ( ( rule__Application__PackageDeclarationsAssignment_3 )* ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:539:1: ( ( rule__Application__PackageDeclarationsAssignment_3 )* )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:539:1: ( ( rule__Application__PackageDeclarationsAssignment_3 )* )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:540:1: ( rule__Application__PackageDeclarationsAssignment_3 )*
            {
             before(grammarAccess.getApplicationAccess().getPackageDeclarationsAssignment_3()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:541:1: ( rule__Application__PackageDeclarationsAssignment_3 )*
            loop5:
            do {
                int alt5=2;
                int LA5_0 = input.LA(1);

                if ( (LA5_0==18) ) {
                    alt5=1;
                }


                switch (alt5) {
            	case 1 :
            	    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:541:2: rule__Application__PackageDeclarationsAssignment_3
            	    {
            	    pushFollow(FOLLOW_rule__Application__PackageDeclarationsAssignment_3_in_rule__Application__Group__3__Impl1088);
            	    rule__Application__PackageDeclarationsAssignment_3();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop5;
                }
            } while (true);

             after(grammarAccess.getApplicationAccess().getPackageDeclarationsAssignment_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__Group__3__Impl"


    // $ANTLR start "rule__Application__Group__4"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:551:1: rule__Application__Group__4 : rule__Application__Group__4__Impl ;
    public final void rule__Application__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:555:1: ( rule__Application__Group__4__Impl )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:556:2: rule__Application__Group__4__Impl
            {
            pushFollow(FOLLOW_rule__Application__Group__4__Impl_in_rule__Application__Group__41119);
            rule__Application__Group__4__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__Group__4"


    // $ANTLR start "rule__Application__Group__4__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:562:1: rule__Application__Group__4__Impl : ( '}' ) ;
    public final void rule__Application__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:566:1: ( ( '}' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:567:1: ( '}' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:567:1: ( '}' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:568:1: '}'
            {
             before(grammarAccess.getApplicationAccess().getRightCurlyBracketKeyword_4()); 
            match(input,17,FOLLOW_17_in_rule__Application__Group__4__Impl1147); 
             after(grammarAccess.getApplicationAccess().getRightCurlyBracketKeyword_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__Group__4__Impl"


    // $ANTLR start "rule__PackageDeclaration__Group__0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:591:1: rule__PackageDeclaration__Group__0 : rule__PackageDeclaration__Group__0__Impl rule__PackageDeclaration__Group__1 ;
    public final void rule__PackageDeclaration__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:595:1: ( rule__PackageDeclaration__Group__0__Impl rule__PackageDeclaration__Group__1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:596:2: rule__PackageDeclaration__Group__0__Impl rule__PackageDeclaration__Group__1
            {
            pushFollow(FOLLOW_rule__PackageDeclaration__Group__0__Impl_in_rule__PackageDeclaration__Group__01188);
            rule__PackageDeclaration__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__PackageDeclaration__Group__1_in_rule__PackageDeclaration__Group__01191);
            rule__PackageDeclaration__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__Group__0"


    // $ANTLR start "rule__PackageDeclaration__Group__0__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:603:1: rule__PackageDeclaration__Group__0__Impl : ( 'package' ) ;
    public final void rule__PackageDeclaration__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:607:1: ( ( 'package' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:608:1: ( 'package' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:608:1: ( 'package' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:609:1: 'package'
            {
             before(grammarAccess.getPackageDeclarationAccess().getPackageKeyword_0()); 
            match(input,18,FOLLOW_18_in_rule__PackageDeclaration__Group__0__Impl1219); 
             after(grammarAccess.getPackageDeclarationAccess().getPackageKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__Group__0__Impl"


    // $ANTLR start "rule__PackageDeclaration__Group__1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:622:1: rule__PackageDeclaration__Group__1 : rule__PackageDeclaration__Group__1__Impl rule__PackageDeclaration__Group__2 ;
    public final void rule__PackageDeclaration__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:626:1: ( rule__PackageDeclaration__Group__1__Impl rule__PackageDeclaration__Group__2 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:627:2: rule__PackageDeclaration__Group__1__Impl rule__PackageDeclaration__Group__2
            {
            pushFollow(FOLLOW_rule__PackageDeclaration__Group__1__Impl_in_rule__PackageDeclaration__Group__11250);
            rule__PackageDeclaration__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__PackageDeclaration__Group__2_in_rule__PackageDeclaration__Group__11253);
            rule__PackageDeclaration__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__Group__1"


    // $ANTLR start "rule__PackageDeclaration__Group__1__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:634:1: rule__PackageDeclaration__Group__1__Impl : ( ( rule__PackageDeclaration__NameAssignment_1 ) ) ;
    public final void rule__PackageDeclaration__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:638:1: ( ( ( rule__PackageDeclaration__NameAssignment_1 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:639:1: ( ( rule__PackageDeclaration__NameAssignment_1 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:639:1: ( ( rule__PackageDeclaration__NameAssignment_1 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:640:1: ( rule__PackageDeclaration__NameAssignment_1 )
            {
             before(grammarAccess.getPackageDeclarationAccess().getNameAssignment_1()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:641:1: ( rule__PackageDeclaration__NameAssignment_1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:641:2: rule__PackageDeclaration__NameAssignment_1
            {
            pushFollow(FOLLOW_rule__PackageDeclaration__NameAssignment_1_in_rule__PackageDeclaration__Group__1__Impl1280);
            rule__PackageDeclaration__NameAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getPackageDeclarationAccess().getNameAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__Group__1__Impl"


    // $ANTLR start "rule__PackageDeclaration__Group__2"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:651:1: rule__PackageDeclaration__Group__2 : rule__PackageDeclaration__Group__2__Impl rule__PackageDeclaration__Group__3 ;
    public final void rule__PackageDeclaration__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:655:1: ( rule__PackageDeclaration__Group__2__Impl rule__PackageDeclaration__Group__3 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:656:2: rule__PackageDeclaration__Group__2__Impl rule__PackageDeclaration__Group__3
            {
            pushFollow(FOLLOW_rule__PackageDeclaration__Group__2__Impl_in_rule__PackageDeclaration__Group__21310);
            rule__PackageDeclaration__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__PackageDeclaration__Group__3_in_rule__PackageDeclaration__Group__21313);
            rule__PackageDeclaration__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__Group__2"


    // $ANTLR start "rule__PackageDeclaration__Group__2__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:663:1: rule__PackageDeclaration__Group__2__Impl : ( '{' ) ;
    public final void rule__PackageDeclaration__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:667:1: ( ( '{' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:668:1: ( '{' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:668:1: ( '{' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:669:1: '{'
            {
             before(grammarAccess.getPackageDeclarationAccess().getLeftCurlyBracketKeyword_2()); 
            match(input,16,FOLLOW_16_in_rule__PackageDeclaration__Group__2__Impl1341); 
             after(grammarAccess.getPackageDeclarationAccess().getLeftCurlyBracketKeyword_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__Group__2__Impl"


    // $ANTLR start "rule__PackageDeclaration__Group__3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:682:1: rule__PackageDeclaration__Group__3 : rule__PackageDeclaration__Group__3__Impl rule__PackageDeclaration__Group__4 ;
    public final void rule__PackageDeclaration__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:686:1: ( rule__PackageDeclaration__Group__3__Impl rule__PackageDeclaration__Group__4 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:687:2: rule__PackageDeclaration__Group__3__Impl rule__PackageDeclaration__Group__4
            {
            pushFollow(FOLLOW_rule__PackageDeclaration__Group__3__Impl_in_rule__PackageDeclaration__Group__31372);
            rule__PackageDeclaration__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__PackageDeclaration__Group__4_in_rule__PackageDeclaration__Group__31375);
            rule__PackageDeclaration__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__Group__3"


    // $ANTLR start "rule__PackageDeclaration__Group__3__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:694:1: rule__PackageDeclaration__Group__3__Impl : ( ( rule__PackageDeclaration__EntitiesAssignment_3 )* ) ;
    public final void rule__PackageDeclaration__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:698:1: ( ( ( rule__PackageDeclaration__EntitiesAssignment_3 )* ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:699:1: ( ( rule__PackageDeclaration__EntitiesAssignment_3 )* )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:699:1: ( ( rule__PackageDeclaration__EntitiesAssignment_3 )* )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:700:1: ( rule__PackageDeclaration__EntitiesAssignment_3 )*
            {
             before(grammarAccess.getPackageDeclarationAccess().getEntitiesAssignment_3()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:701:1: ( rule__PackageDeclaration__EntitiesAssignment_3 )*
            loop6:
            do {
                int alt6=2;
                int LA6_0 = input.LA(1);

                if ( (LA6_0==20) ) {
                    alt6=1;
                }


                switch (alt6) {
            	case 1 :
            	    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:701:2: rule__PackageDeclaration__EntitiesAssignment_3
            	    {
            	    pushFollow(FOLLOW_rule__PackageDeclaration__EntitiesAssignment_3_in_rule__PackageDeclaration__Group__3__Impl1402);
            	    rule__PackageDeclaration__EntitiesAssignment_3();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop6;
                }
            } while (true);

             after(grammarAccess.getPackageDeclarationAccess().getEntitiesAssignment_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__Group__3__Impl"


    // $ANTLR start "rule__PackageDeclaration__Group__4"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:711:1: rule__PackageDeclaration__Group__4 : rule__PackageDeclaration__Group__4__Impl ;
    public final void rule__PackageDeclaration__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:715:1: ( rule__PackageDeclaration__Group__4__Impl )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:716:2: rule__PackageDeclaration__Group__4__Impl
            {
            pushFollow(FOLLOW_rule__PackageDeclaration__Group__4__Impl_in_rule__PackageDeclaration__Group__41433);
            rule__PackageDeclaration__Group__4__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__Group__4"


    // $ANTLR start "rule__PackageDeclaration__Group__4__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:722:1: rule__PackageDeclaration__Group__4__Impl : ( '}' ) ;
    public final void rule__PackageDeclaration__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:726:1: ( ( '}' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:727:1: ( '}' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:727:1: ( '}' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:728:1: '}'
            {
             before(grammarAccess.getPackageDeclarationAccess().getRightCurlyBracketKeyword_4()); 
            match(input,17,FOLLOW_17_in_rule__PackageDeclaration__Group__4__Impl1461); 
             after(grammarAccess.getPackageDeclarationAccess().getRightCurlyBracketKeyword_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__Group__4__Impl"


    // $ANTLR start "rule__DataType__Group__0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:751:1: rule__DataType__Group__0 : rule__DataType__Group__0__Impl rule__DataType__Group__1 ;
    public final void rule__DataType__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:755:1: ( rule__DataType__Group__0__Impl rule__DataType__Group__1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:756:2: rule__DataType__Group__0__Impl rule__DataType__Group__1
            {
            pushFollow(FOLLOW_rule__DataType__Group__0__Impl_in_rule__DataType__Group__01502);
            rule__DataType__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__DataType__Group__1_in_rule__DataType__Group__01505);
            rule__DataType__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__DataType__Group__0"


    // $ANTLR start "rule__DataType__Group__0__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:763:1: rule__DataType__Group__0__Impl : ( 'datatype' ) ;
    public final void rule__DataType__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:767:1: ( ( 'datatype' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:768:1: ( 'datatype' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:768:1: ( 'datatype' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:769:1: 'datatype'
            {
             before(grammarAccess.getDataTypeAccess().getDatatypeKeyword_0()); 
            match(input,19,FOLLOW_19_in_rule__DataType__Group__0__Impl1533); 
             after(grammarAccess.getDataTypeAccess().getDatatypeKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__DataType__Group__0__Impl"


    // $ANTLR start "rule__DataType__Group__1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:782:1: rule__DataType__Group__1 : rule__DataType__Group__1__Impl ;
    public final void rule__DataType__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:786:1: ( rule__DataType__Group__1__Impl )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:787:2: rule__DataType__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__DataType__Group__1__Impl_in_rule__DataType__Group__11564);
            rule__DataType__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__DataType__Group__1"


    // $ANTLR start "rule__DataType__Group__1__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:793:1: rule__DataType__Group__1__Impl : ( ( rule__DataType__NameAssignment_1 ) ) ;
    public final void rule__DataType__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:797:1: ( ( ( rule__DataType__NameAssignment_1 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:798:1: ( ( rule__DataType__NameAssignment_1 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:798:1: ( ( rule__DataType__NameAssignment_1 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:799:1: ( rule__DataType__NameAssignment_1 )
            {
             before(grammarAccess.getDataTypeAccess().getNameAssignment_1()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:800:1: ( rule__DataType__NameAssignment_1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:800:2: rule__DataType__NameAssignment_1
            {
            pushFollow(FOLLOW_rule__DataType__NameAssignment_1_in_rule__DataType__Group__1__Impl1591);
            rule__DataType__NameAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getDataTypeAccess().getNameAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__DataType__Group__1__Impl"


    // $ANTLR start "rule__Entity__Group__0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:814:1: rule__Entity__Group__0 : rule__Entity__Group__0__Impl rule__Entity__Group__1 ;
    public final void rule__Entity__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:818:1: ( rule__Entity__Group__0__Impl rule__Entity__Group__1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:819:2: rule__Entity__Group__0__Impl rule__Entity__Group__1
            {
            pushFollow(FOLLOW_rule__Entity__Group__0__Impl_in_rule__Entity__Group__01625);
            rule__Entity__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Entity__Group__1_in_rule__Entity__Group__01628);
            rule__Entity__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__0"


    // $ANTLR start "rule__Entity__Group__0__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:826:1: rule__Entity__Group__0__Impl : ( 'entity' ) ;
    public final void rule__Entity__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:830:1: ( ( 'entity' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:831:1: ( 'entity' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:831:1: ( 'entity' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:832:1: 'entity'
            {
             before(grammarAccess.getEntityAccess().getEntityKeyword_0()); 
            match(input,20,FOLLOW_20_in_rule__Entity__Group__0__Impl1656); 
             after(grammarAccess.getEntityAccess().getEntityKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__0__Impl"


    // $ANTLR start "rule__Entity__Group__1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:845:1: rule__Entity__Group__1 : rule__Entity__Group__1__Impl rule__Entity__Group__2 ;
    public final void rule__Entity__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:849:1: ( rule__Entity__Group__1__Impl rule__Entity__Group__2 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:850:2: rule__Entity__Group__1__Impl rule__Entity__Group__2
            {
            pushFollow(FOLLOW_rule__Entity__Group__1__Impl_in_rule__Entity__Group__11687);
            rule__Entity__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Entity__Group__2_in_rule__Entity__Group__11690);
            rule__Entity__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__1"


    // $ANTLR start "rule__Entity__Group__1__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:857:1: rule__Entity__Group__1__Impl : ( ( rule__Entity__NameAssignment_1 ) ) ;
    public final void rule__Entity__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:861:1: ( ( ( rule__Entity__NameAssignment_1 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:862:1: ( ( rule__Entity__NameAssignment_1 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:862:1: ( ( rule__Entity__NameAssignment_1 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:863:1: ( rule__Entity__NameAssignment_1 )
            {
             before(grammarAccess.getEntityAccess().getNameAssignment_1()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:864:1: ( rule__Entity__NameAssignment_1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:864:2: rule__Entity__NameAssignment_1
            {
            pushFollow(FOLLOW_rule__Entity__NameAssignment_1_in_rule__Entity__Group__1__Impl1717);
            rule__Entity__NameAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getEntityAccess().getNameAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__1__Impl"


    // $ANTLR start "rule__Entity__Group__2"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:874:1: rule__Entity__Group__2 : rule__Entity__Group__2__Impl rule__Entity__Group__3 ;
    public final void rule__Entity__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:878:1: ( rule__Entity__Group__2__Impl rule__Entity__Group__3 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:879:2: rule__Entity__Group__2__Impl rule__Entity__Group__3
            {
            pushFollow(FOLLOW_rule__Entity__Group__2__Impl_in_rule__Entity__Group__21747);
            rule__Entity__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Entity__Group__3_in_rule__Entity__Group__21750);
            rule__Entity__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__2"


    // $ANTLR start "rule__Entity__Group__2__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:886:1: rule__Entity__Group__2__Impl : ( ( rule__Entity__Group_2__0 )? ) ;
    public final void rule__Entity__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:890:1: ( ( ( rule__Entity__Group_2__0 )? ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:891:1: ( ( rule__Entity__Group_2__0 )? )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:891:1: ( ( rule__Entity__Group_2__0 )? )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:892:1: ( rule__Entity__Group_2__0 )?
            {
             before(grammarAccess.getEntityAccess().getGroup_2()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:893:1: ( rule__Entity__Group_2__0 )?
            int alt7=2;
            int LA7_0 = input.LA(1);

            if ( (LA7_0==21) ) {
                alt7=1;
            }
            switch (alt7) {
                case 1 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:893:2: rule__Entity__Group_2__0
                    {
                    pushFollow(FOLLOW_rule__Entity__Group_2__0_in_rule__Entity__Group__2__Impl1777);
                    rule__Entity__Group_2__0();

                    state._fsp--;


                    }
                    break;

            }

             after(grammarAccess.getEntityAccess().getGroup_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__2__Impl"


    // $ANTLR start "rule__Entity__Group__3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:903:1: rule__Entity__Group__3 : rule__Entity__Group__3__Impl rule__Entity__Group__4 ;
    public final void rule__Entity__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:907:1: ( rule__Entity__Group__3__Impl rule__Entity__Group__4 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:908:2: rule__Entity__Group__3__Impl rule__Entity__Group__4
            {
            pushFollow(FOLLOW_rule__Entity__Group__3__Impl_in_rule__Entity__Group__31808);
            rule__Entity__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Entity__Group__4_in_rule__Entity__Group__31811);
            rule__Entity__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__3"


    // $ANTLR start "rule__Entity__Group__3__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:915:1: rule__Entity__Group__3__Impl : ( '{' ) ;
    public final void rule__Entity__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:919:1: ( ( '{' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:920:1: ( '{' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:920:1: ( '{' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:921:1: '{'
            {
             before(grammarAccess.getEntityAccess().getLeftCurlyBracketKeyword_3()); 
            match(input,16,FOLLOW_16_in_rule__Entity__Group__3__Impl1839); 
             after(grammarAccess.getEntityAccess().getLeftCurlyBracketKeyword_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__3__Impl"


    // $ANTLR start "rule__Entity__Group__4"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:934:1: rule__Entity__Group__4 : rule__Entity__Group__4__Impl rule__Entity__Group__5 ;
    public final void rule__Entity__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:938:1: ( rule__Entity__Group__4__Impl rule__Entity__Group__5 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:939:2: rule__Entity__Group__4__Impl rule__Entity__Group__5
            {
            pushFollow(FOLLOW_rule__Entity__Group__4__Impl_in_rule__Entity__Group__41870);
            rule__Entity__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Entity__Group__5_in_rule__Entity__Group__41873);
            rule__Entity__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__4"


    // $ANTLR start "rule__Entity__Group__4__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:946:1: rule__Entity__Group__4__Impl : ( ( rule__Entity__AttributesAssignment_4 )* ) ;
    public final void rule__Entity__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:950:1: ( ( ( rule__Entity__AttributesAssignment_4 )* ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:951:1: ( ( rule__Entity__AttributesAssignment_4 )* )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:951:1: ( ( rule__Entity__AttributesAssignment_4 )* )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:952:1: ( rule__Entity__AttributesAssignment_4 )*
            {
             before(grammarAccess.getEntityAccess().getAttributesAssignment_4()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:953:1: ( rule__Entity__AttributesAssignment_4 )*
            loop8:
            do {
                int alt8=2;
                int LA8_0 = input.LA(1);

                if ( (LA8_0==RULE_ID||LA8_0==22) ) {
                    alt8=1;
                }


                switch (alt8) {
            	case 1 :
            	    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:953:2: rule__Entity__AttributesAssignment_4
            	    {
            	    pushFollow(FOLLOW_rule__Entity__AttributesAssignment_4_in_rule__Entity__Group__4__Impl1900);
            	    rule__Entity__AttributesAssignment_4();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop8;
                }
            } while (true);

             after(grammarAccess.getEntityAccess().getAttributesAssignment_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__4__Impl"


    // $ANTLR start "rule__Entity__Group__5"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:963:1: rule__Entity__Group__5 : rule__Entity__Group__5__Impl ;
    public final void rule__Entity__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:967:1: ( rule__Entity__Group__5__Impl )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:968:2: rule__Entity__Group__5__Impl
            {
            pushFollow(FOLLOW_rule__Entity__Group__5__Impl_in_rule__Entity__Group__51931);
            rule__Entity__Group__5__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__5"


    // $ANTLR start "rule__Entity__Group__5__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:974:1: rule__Entity__Group__5__Impl : ( '}' ) ;
    public final void rule__Entity__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:978:1: ( ( '}' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:979:1: ( '}' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:979:1: ( '}' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:980:1: '}'
            {
             before(grammarAccess.getEntityAccess().getRightCurlyBracketKeyword_5()); 
            match(input,17,FOLLOW_17_in_rule__Entity__Group__5__Impl1959); 
             after(grammarAccess.getEntityAccess().getRightCurlyBracketKeyword_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group__5__Impl"


    // $ANTLR start "rule__Entity__Group_2__0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1005:1: rule__Entity__Group_2__0 : rule__Entity__Group_2__0__Impl rule__Entity__Group_2__1 ;
    public final void rule__Entity__Group_2__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1009:1: ( rule__Entity__Group_2__0__Impl rule__Entity__Group_2__1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1010:2: rule__Entity__Group_2__0__Impl rule__Entity__Group_2__1
            {
            pushFollow(FOLLOW_rule__Entity__Group_2__0__Impl_in_rule__Entity__Group_2__02002);
            rule__Entity__Group_2__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Entity__Group_2__1_in_rule__Entity__Group_2__02005);
            rule__Entity__Group_2__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group_2__0"


    // $ANTLR start "rule__Entity__Group_2__0__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1017:1: rule__Entity__Group_2__0__Impl : ( 'extends' ) ;
    public final void rule__Entity__Group_2__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1021:1: ( ( 'extends' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1022:1: ( 'extends' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1022:1: ( 'extends' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1023:1: 'extends'
            {
             before(grammarAccess.getEntityAccess().getExtendsKeyword_2_0()); 
            match(input,21,FOLLOW_21_in_rule__Entity__Group_2__0__Impl2033); 
             after(grammarAccess.getEntityAccess().getExtendsKeyword_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group_2__0__Impl"


    // $ANTLR start "rule__Entity__Group_2__1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1036:1: rule__Entity__Group_2__1 : rule__Entity__Group_2__1__Impl ;
    public final void rule__Entity__Group_2__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1040:1: ( rule__Entity__Group_2__1__Impl )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1041:2: rule__Entity__Group_2__1__Impl
            {
            pushFollow(FOLLOW_rule__Entity__Group_2__1__Impl_in_rule__Entity__Group_2__12064);
            rule__Entity__Group_2__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group_2__1"


    // $ANTLR start "rule__Entity__Group_2__1__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1047:1: rule__Entity__Group_2__1__Impl : ( ( rule__Entity__SuperTypeAssignment_2_1 ) ) ;
    public final void rule__Entity__Group_2__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1051:1: ( ( ( rule__Entity__SuperTypeAssignment_2_1 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1052:1: ( ( rule__Entity__SuperTypeAssignment_2_1 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1052:1: ( ( rule__Entity__SuperTypeAssignment_2_1 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1053:1: ( rule__Entity__SuperTypeAssignment_2_1 )
            {
             before(grammarAccess.getEntityAccess().getSuperTypeAssignment_2_1()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1054:1: ( rule__Entity__SuperTypeAssignment_2_1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1054:2: rule__Entity__SuperTypeAssignment_2_1
            {
            pushFollow(FOLLOW_rule__Entity__SuperTypeAssignment_2_1_in_rule__Entity__Group_2__1__Impl2091);
            rule__Entity__SuperTypeAssignment_2_1();

            state._fsp--;


            }

             after(grammarAccess.getEntityAccess().getSuperTypeAssignment_2_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__Group_2__1__Impl"


    // $ANTLR start "rule__SimpleAttribute__Group__0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1068:1: rule__SimpleAttribute__Group__0 : rule__SimpleAttribute__Group__0__Impl rule__SimpleAttribute__Group__1 ;
    public final void rule__SimpleAttribute__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1072:1: ( rule__SimpleAttribute__Group__0__Impl rule__SimpleAttribute__Group__1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1073:2: rule__SimpleAttribute__Group__0__Impl rule__SimpleAttribute__Group__1
            {
            pushFollow(FOLLOW_rule__SimpleAttribute__Group__0__Impl_in_rule__SimpleAttribute__Group__02125);
            rule__SimpleAttribute__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__SimpleAttribute__Group__1_in_rule__SimpleAttribute__Group__02128);
            rule__SimpleAttribute__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__Group__0"


    // $ANTLR start "rule__SimpleAttribute__Group__0__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1080:1: rule__SimpleAttribute__Group__0__Impl : ( 'att' ) ;
    public final void rule__SimpleAttribute__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1084:1: ( ( 'att' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1085:1: ( 'att' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1085:1: ( 'att' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1086:1: 'att'
            {
             before(grammarAccess.getSimpleAttributeAccess().getAttKeyword_0()); 
            match(input,22,FOLLOW_22_in_rule__SimpleAttribute__Group__0__Impl2156); 
             after(grammarAccess.getSimpleAttributeAccess().getAttKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__Group__0__Impl"


    // $ANTLR start "rule__SimpleAttribute__Group__1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1099:1: rule__SimpleAttribute__Group__1 : rule__SimpleAttribute__Group__1__Impl rule__SimpleAttribute__Group__2 ;
    public final void rule__SimpleAttribute__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1103:1: ( rule__SimpleAttribute__Group__1__Impl rule__SimpleAttribute__Group__2 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1104:2: rule__SimpleAttribute__Group__1__Impl rule__SimpleAttribute__Group__2
            {
            pushFollow(FOLLOW_rule__SimpleAttribute__Group__1__Impl_in_rule__SimpleAttribute__Group__12187);
            rule__SimpleAttribute__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__SimpleAttribute__Group__2_in_rule__SimpleAttribute__Group__12190);
            rule__SimpleAttribute__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__Group__1"


    // $ANTLR start "rule__SimpleAttribute__Group__1__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1111:1: rule__SimpleAttribute__Group__1__Impl : ( ( rule__SimpleAttribute__NameAssignment_1 ) ) ;
    public final void rule__SimpleAttribute__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1115:1: ( ( ( rule__SimpleAttribute__NameAssignment_1 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1116:1: ( ( rule__SimpleAttribute__NameAssignment_1 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1116:1: ( ( rule__SimpleAttribute__NameAssignment_1 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1117:1: ( rule__SimpleAttribute__NameAssignment_1 )
            {
             before(grammarAccess.getSimpleAttributeAccess().getNameAssignment_1()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1118:1: ( rule__SimpleAttribute__NameAssignment_1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1118:2: rule__SimpleAttribute__NameAssignment_1
            {
            pushFollow(FOLLOW_rule__SimpleAttribute__NameAssignment_1_in_rule__SimpleAttribute__Group__1__Impl2217);
            rule__SimpleAttribute__NameAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getSimpleAttributeAccess().getNameAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__Group__1__Impl"


    // $ANTLR start "rule__SimpleAttribute__Group__2"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1128:1: rule__SimpleAttribute__Group__2 : rule__SimpleAttribute__Group__2__Impl rule__SimpleAttribute__Group__3 ;
    public final void rule__SimpleAttribute__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1132:1: ( rule__SimpleAttribute__Group__2__Impl rule__SimpleAttribute__Group__3 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1133:2: rule__SimpleAttribute__Group__2__Impl rule__SimpleAttribute__Group__3
            {
            pushFollow(FOLLOW_rule__SimpleAttribute__Group__2__Impl_in_rule__SimpleAttribute__Group__22247);
            rule__SimpleAttribute__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__SimpleAttribute__Group__3_in_rule__SimpleAttribute__Group__22250);
            rule__SimpleAttribute__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__Group__2"


    // $ANTLR start "rule__SimpleAttribute__Group__2__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1140:1: rule__SimpleAttribute__Group__2__Impl : ( ':' ) ;
    public final void rule__SimpleAttribute__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1144:1: ( ( ':' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1145:1: ( ':' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1145:1: ( ':' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1146:1: ':'
            {
             before(grammarAccess.getSimpleAttributeAccess().getColonKeyword_2()); 
            match(input,23,FOLLOW_23_in_rule__SimpleAttribute__Group__2__Impl2278); 
             after(grammarAccess.getSimpleAttributeAccess().getColonKeyword_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__Group__2__Impl"


    // $ANTLR start "rule__SimpleAttribute__Group__3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1159:1: rule__SimpleAttribute__Group__3 : rule__SimpleAttribute__Group__3__Impl ;
    public final void rule__SimpleAttribute__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1163:1: ( rule__SimpleAttribute__Group__3__Impl )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1164:2: rule__SimpleAttribute__Group__3__Impl
            {
            pushFollow(FOLLOW_rule__SimpleAttribute__Group__3__Impl_in_rule__SimpleAttribute__Group__32309);
            rule__SimpleAttribute__Group__3__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__Group__3"


    // $ANTLR start "rule__SimpleAttribute__Group__3__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1170:1: rule__SimpleAttribute__Group__3__Impl : ( ( rule__SimpleAttribute__TypeAssignment_3 ) ) ;
    public final void rule__SimpleAttribute__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1174:1: ( ( ( rule__SimpleAttribute__TypeAssignment_3 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1175:1: ( ( rule__SimpleAttribute__TypeAssignment_3 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1175:1: ( ( rule__SimpleAttribute__TypeAssignment_3 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1176:1: ( rule__SimpleAttribute__TypeAssignment_3 )
            {
             before(grammarAccess.getSimpleAttributeAccess().getTypeAssignment_3()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1177:1: ( rule__SimpleAttribute__TypeAssignment_3 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1177:2: rule__SimpleAttribute__TypeAssignment_3
            {
            pushFollow(FOLLOW_rule__SimpleAttribute__TypeAssignment_3_in_rule__SimpleAttribute__Group__3__Impl2336);
            rule__SimpleAttribute__TypeAssignment_3();

            state._fsp--;


            }

             after(grammarAccess.getSimpleAttributeAccess().getTypeAssignment_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__Group__3__Impl"


    // $ANTLR start "rule__RefAttribute__Group__0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1195:1: rule__RefAttribute__Group__0 : rule__RefAttribute__Group__0__Impl rule__RefAttribute__Group__1 ;
    public final void rule__RefAttribute__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1199:1: ( rule__RefAttribute__Group__0__Impl rule__RefAttribute__Group__1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1200:2: rule__RefAttribute__Group__0__Impl rule__RefAttribute__Group__1
            {
            pushFollow(FOLLOW_rule__RefAttribute__Group__0__Impl_in_rule__RefAttribute__Group__02374);
            rule__RefAttribute__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__RefAttribute__Group__1_in_rule__RefAttribute__Group__02377);
            rule__RefAttribute__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__Group__0"


    // $ANTLR start "rule__RefAttribute__Group__0__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1207:1: rule__RefAttribute__Group__0__Impl : ( ( rule__RefAttribute__NameAssignment_0 ) ) ;
    public final void rule__RefAttribute__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1211:1: ( ( ( rule__RefAttribute__NameAssignment_0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1212:1: ( ( rule__RefAttribute__NameAssignment_0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1212:1: ( ( rule__RefAttribute__NameAssignment_0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1213:1: ( rule__RefAttribute__NameAssignment_0 )
            {
             before(grammarAccess.getRefAttributeAccess().getNameAssignment_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1214:1: ( rule__RefAttribute__NameAssignment_0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1214:2: rule__RefAttribute__NameAssignment_0
            {
            pushFollow(FOLLOW_rule__RefAttribute__NameAssignment_0_in_rule__RefAttribute__Group__0__Impl2404);
            rule__RefAttribute__NameAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getRefAttributeAccess().getNameAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__Group__0__Impl"


    // $ANTLR start "rule__RefAttribute__Group__1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1224:1: rule__RefAttribute__Group__1 : rule__RefAttribute__Group__1__Impl rule__RefAttribute__Group__2 ;
    public final void rule__RefAttribute__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1228:1: ( rule__RefAttribute__Group__1__Impl rule__RefAttribute__Group__2 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1229:2: rule__RefAttribute__Group__1__Impl rule__RefAttribute__Group__2
            {
            pushFollow(FOLLOW_rule__RefAttribute__Group__1__Impl_in_rule__RefAttribute__Group__12434);
            rule__RefAttribute__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__RefAttribute__Group__2_in_rule__RefAttribute__Group__12437);
            rule__RefAttribute__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__Group__1"


    // $ANTLR start "rule__RefAttribute__Group__1__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1236:1: rule__RefAttribute__Group__1__Impl : ( ( rule__RefAttribute__RefsAssignment_1 ) ) ;
    public final void rule__RefAttribute__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1240:1: ( ( ( rule__RefAttribute__RefsAssignment_1 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1241:1: ( ( rule__RefAttribute__RefsAssignment_1 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1241:1: ( ( rule__RefAttribute__RefsAssignment_1 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1242:1: ( rule__RefAttribute__RefsAssignment_1 )
            {
             before(grammarAccess.getRefAttributeAccess().getRefsAssignment_1()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1243:1: ( rule__RefAttribute__RefsAssignment_1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1243:2: rule__RefAttribute__RefsAssignment_1
            {
            pushFollow(FOLLOW_rule__RefAttribute__RefsAssignment_1_in_rule__RefAttribute__Group__1__Impl2464);
            rule__RefAttribute__RefsAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getRefAttributeAccess().getRefsAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__Group__1__Impl"


    // $ANTLR start "rule__RefAttribute__Group__2"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1253:1: rule__RefAttribute__Group__2 : rule__RefAttribute__Group__2__Impl rule__RefAttribute__Group__3 ;
    public final void rule__RefAttribute__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1257:1: ( rule__RefAttribute__Group__2__Impl rule__RefAttribute__Group__3 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1258:2: rule__RefAttribute__Group__2__Impl rule__RefAttribute__Group__3
            {
            pushFollow(FOLLOW_rule__RefAttribute__Group__2__Impl_in_rule__RefAttribute__Group__22494);
            rule__RefAttribute__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__RefAttribute__Group__3_in_rule__RefAttribute__Group__22497);
            rule__RefAttribute__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__Group__2"


    // $ANTLR start "rule__RefAttribute__Group__2__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1265:1: rule__RefAttribute__Group__2__Impl : ( ( rule__RefAttribute__Alternatives_2 ) ) ;
    public final void rule__RefAttribute__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1269:1: ( ( ( rule__RefAttribute__Alternatives_2 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1270:1: ( ( rule__RefAttribute__Alternatives_2 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1270:1: ( ( rule__RefAttribute__Alternatives_2 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1271:1: ( rule__RefAttribute__Alternatives_2 )
            {
             before(grammarAccess.getRefAttributeAccess().getAlternatives_2()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1272:1: ( rule__RefAttribute__Alternatives_2 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1272:2: rule__RefAttribute__Alternatives_2
            {
            pushFollow(FOLLOW_rule__RefAttribute__Alternatives_2_in_rule__RefAttribute__Group__2__Impl2524);
            rule__RefAttribute__Alternatives_2();

            state._fsp--;


            }

             after(grammarAccess.getRefAttributeAccess().getAlternatives_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__Group__2__Impl"


    // $ANTLR start "rule__RefAttribute__Group__3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1282:1: rule__RefAttribute__Group__3 : rule__RefAttribute__Group__3__Impl ;
    public final void rule__RefAttribute__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1286:1: ( rule__RefAttribute__Group__3__Impl )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1287:2: rule__RefAttribute__Group__3__Impl
            {
            pushFollow(FOLLOW_rule__RefAttribute__Group__3__Impl_in_rule__RefAttribute__Group__32554);
            rule__RefAttribute__Group__3__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__Group__3"


    // $ANTLR start "rule__RefAttribute__Group__3__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1293:1: rule__RefAttribute__Group__3__Impl : ( ( rule__RefAttribute__TypeAssignment_3 ) ) ;
    public final void rule__RefAttribute__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1297:1: ( ( ( rule__RefAttribute__TypeAssignment_3 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1298:1: ( ( rule__RefAttribute__TypeAssignment_3 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1298:1: ( ( rule__RefAttribute__TypeAssignment_3 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1299:1: ( rule__RefAttribute__TypeAssignment_3 )
            {
             before(grammarAccess.getRefAttributeAccess().getTypeAssignment_3()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1300:1: ( rule__RefAttribute__TypeAssignment_3 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1300:2: rule__RefAttribute__TypeAssignment_3
            {
            pushFollow(FOLLOW_rule__RefAttribute__TypeAssignment_3_in_rule__RefAttribute__Group__3__Impl2581);
            rule__RefAttribute__TypeAssignment_3();

            state._fsp--;


            }

             after(grammarAccess.getRefAttributeAccess().getTypeAssignment_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__Group__3__Impl"


    // $ANTLR start "rule__RefByAttribute__Group__0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1318:1: rule__RefByAttribute__Group__0 : rule__RefByAttribute__Group__0__Impl rule__RefByAttribute__Group__1 ;
    public final void rule__RefByAttribute__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1322:1: ( rule__RefByAttribute__Group__0__Impl rule__RefByAttribute__Group__1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1323:2: rule__RefByAttribute__Group__0__Impl rule__RefByAttribute__Group__1
            {
            pushFollow(FOLLOW_rule__RefByAttribute__Group__0__Impl_in_rule__RefByAttribute__Group__02619);
            rule__RefByAttribute__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__RefByAttribute__Group__1_in_rule__RefByAttribute__Group__02622);
            rule__RefByAttribute__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__Group__0"


    // $ANTLR start "rule__RefByAttribute__Group__0__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1330:1: rule__RefByAttribute__Group__0__Impl : ( ( rule__RefByAttribute__NameAssignment_0 ) ) ;
    public final void rule__RefByAttribute__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1334:1: ( ( ( rule__RefByAttribute__NameAssignment_0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1335:1: ( ( rule__RefByAttribute__NameAssignment_0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1335:1: ( ( rule__RefByAttribute__NameAssignment_0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1336:1: ( rule__RefByAttribute__NameAssignment_0 )
            {
             before(grammarAccess.getRefByAttributeAccess().getNameAssignment_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1337:1: ( rule__RefByAttribute__NameAssignment_0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1337:2: rule__RefByAttribute__NameAssignment_0
            {
            pushFollow(FOLLOW_rule__RefByAttribute__NameAssignment_0_in_rule__RefByAttribute__Group__0__Impl2649);
            rule__RefByAttribute__NameAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getRefByAttributeAccess().getNameAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__Group__0__Impl"


    // $ANTLR start "rule__RefByAttribute__Group__1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1347:1: rule__RefByAttribute__Group__1 : rule__RefByAttribute__Group__1__Impl rule__RefByAttribute__Group__2 ;
    public final void rule__RefByAttribute__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1351:1: ( rule__RefByAttribute__Group__1__Impl rule__RefByAttribute__Group__2 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1352:2: rule__RefByAttribute__Group__1__Impl rule__RefByAttribute__Group__2
            {
            pushFollow(FOLLOW_rule__RefByAttribute__Group__1__Impl_in_rule__RefByAttribute__Group__12679);
            rule__RefByAttribute__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__RefByAttribute__Group__2_in_rule__RefByAttribute__Group__12682);
            rule__RefByAttribute__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__Group__1"


    // $ANTLR start "rule__RefByAttribute__Group__1__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1359:1: rule__RefByAttribute__Group__1__Impl : ( ( rule__RefByAttribute__Ref_byAssignment_1 ) ) ;
    public final void rule__RefByAttribute__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1363:1: ( ( ( rule__RefByAttribute__Ref_byAssignment_1 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1364:1: ( ( rule__RefByAttribute__Ref_byAssignment_1 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1364:1: ( ( rule__RefByAttribute__Ref_byAssignment_1 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1365:1: ( rule__RefByAttribute__Ref_byAssignment_1 )
            {
             before(grammarAccess.getRefByAttributeAccess().getRef_byAssignment_1()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1366:1: ( rule__RefByAttribute__Ref_byAssignment_1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1366:2: rule__RefByAttribute__Ref_byAssignment_1
            {
            pushFollow(FOLLOW_rule__RefByAttribute__Ref_byAssignment_1_in_rule__RefByAttribute__Group__1__Impl2709);
            rule__RefByAttribute__Ref_byAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getRefByAttributeAccess().getRef_byAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__Group__1__Impl"


    // $ANTLR start "rule__RefByAttribute__Group__2"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1376:1: rule__RefByAttribute__Group__2 : rule__RefByAttribute__Group__2__Impl rule__RefByAttribute__Group__3 ;
    public final void rule__RefByAttribute__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1380:1: ( rule__RefByAttribute__Group__2__Impl rule__RefByAttribute__Group__3 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1381:2: rule__RefByAttribute__Group__2__Impl rule__RefByAttribute__Group__3
            {
            pushFollow(FOLLOW_rule__RefByAttribute__Group__2__Impl_in_rule__RefByAttribute__Group__22739);
            rule__RefByAttribute__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__RefByAttribute__Group__3_in_rule__RefByAttribute__Group__22742);
            rule__RefByAttribute__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__Group__2"


    // $ANTLR start "rule__RefByAttribute__Group__2__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1388:1: rule__RefByAttribute__Group__2__Impl : ( ( rule__RefByAttribute__Alternatives_2 )? ) ;
    public final void rule__RefByAttribute__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1392:1: ( ( ( rule__RefByAttribute__Alternatives_2 )? ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1393:1: ( ( rule__RefByAttribute__Alternatives_2 )? )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1393:1: ( ( rule__RefByAttribute__Alternatives_2 )? )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1394:1: ( rule__RefByAttribute__Alternatives_2 )?
            {
             before(grammarAccess.getRefByAttributeAccess().getAlternatives_2()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1395:1: ( rule__RefByAttribute__Alternatives_2 )?
            int alt9=2;
            int LA9_0 = input.LA(1);

            if ( ((LA9_0>=26 && LA9_0<=27)) ) {
                alt9=1;
            }
            switch (alt9) {
                case 1 :
                    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1395:2: rule__RefByAttribute__Alternatives_2
                    {
                    pushFollow(FOLLOW_rule__RefByAttribute__Alternatives_2_in_rule__RefByAttribute__Group__2__Impl2769);
                    rule__RefByAttribute__Alternatives_2();

                    state._fsp--;


                    }
                    break;

            }

             after(grammarAccess.getRefByAttributeAccess().getAlternatives_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__Group__2__Impl"


    // $ANTLR start "rule__RefByAttribute__Group__3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1405:1: rule__RefByAttribute__Group__3 : rule__RefByAttribute__Group__3__Impl ;
    public final void rule__RefByAttribute__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1409:1: ( rule__RefByAttribute__Group__3__Impl )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1410:2: rule__RefByAttribute__Group__3__Impl
            {
            pushFollow(FOLLOW_rule__RefByAttribute__Group__3__Impl_in_rule__RefByAttribute__Group__32800);
            rule__RefByAttribute__Group__3__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__Group__3"


    // $ANTLR start "rule__RefByAttribute__Group__3__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1416:1: rule__RefByAttribute__Group__3__Impl : ( ( rule__RefByAttribute__TypeAssignment_3 ) ) ;
    public final void rule__RefByAttribute__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1420:1: ( ( ( rule__RefByAttribute__TypeAssignment_3 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1421:1: ( ( rule__RefByAttribute__TypeAssignment_3 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1421:1: ( ( rule__RefByAttribute__TypeAssignment_3 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1422:1: ( rule__RefByAttribute__TypeAssignment_3 )
            {
             before(grammarAccess.getRefByAttributeAccess().getTypeAssignment_3()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1423:1: ( rule__RefByAttribute__TypeAssignment_3 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1423:2: rule__RefByAttribute__TypeAssignment_3
            {
            pushFollow(FOLLOW_rule__RefByAttribute__TypeAssignment_3_in_rule__RefByAttribute__Group__3__Impl2827);
            rule__RefByAttribute__TypeAssignment_3();

            state._fsp--;


            }

             after(grammarAccess.getRefByAttributeAccess().getTypeAssignment_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__Group__3__Impl"


    // $ANTLR start "rule__QualifiedName__Group__0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1441:1: rule__QualifiedName__Group__0 : rule__QualifiedName__Group__0__Impl rule__QualifiedName__Group__1 ;
    public final void rule__QualifiedName__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1445:1: ( rule__QualifiedName__Group__0__Impl rule__QualifiedName__Group__1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1446:2: rule__QualifiedName__Group__0__Impl rule__QualifiedName__Group__1
            {
            pushFollow(FOLLOW_rule__QualifiedName__Group__0__Impl_in_rule__QualifiedName__Group__02865);
            rule__QualifiedName__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__QualifiedName__Group__1_in_rule__QualifiedName__Group__02868);
            rule__QualifiedName__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__QualifiedName__Group__0"


    // $ANTLR start "rule__QualifiedName__Group__0__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1453:1: rule__QualifiedName__Group__0__Impl : ( RULE_ID ) ;
    public final void rule__QualifiedName__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1457:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1458:1: ( RULE_ID )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1458:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1459:1: RULE_ID
            {
             before(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__QualifiedName__Group__0__Impl2895); 
             after(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__QualifiedName__Group__0__Impl"


    // $ANTLR start "rule__QualifiedName__Group__1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1470:1: rule__QualifiedName__Group__1 : rule__QualifiedName__Group__1__Impl ;
    public final void rule__QualifiedName__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1474:1: ( rule__QualifiedName__Group__1__Impl )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1475:2: rule__QualifiedName__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__QualifiedName__Group__1__Impl_in_rule__QualifiedName__Group__12924);
            rule__QualifiedName__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__QualifiedName__Group__1"


    // $ANTLR start "rule__QualifiedName__Group__1__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1481:1: rule__QualifiedName__Group__1__Impl : ( ( rule__QualifiedName__Group_1__0 )* ) ;
    public final void rule__QualifiedName__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1485:1: ( ( ( rule__QualifiedName__Group_1__0 )* ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1486:1: ( ( rule__QualifiedName__Group_1__0 )* )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1486:1: ( ( rule__QualifiedName__Group_1__0 )* )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1487:1: ( rule__QualifiedName__Group_1__0 )*
            {
             before(grammarAccess.getQualifiedNameAccess().getGroup_1()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1488:1: ( rule__QualifiedName__Group_1__0 )*
            loop10:
            do {
                int alt10=2;
                int LA10_0 = input.LA(1);

                if ( (LA10_0==24) ) {
                    alt10=1;
                }


                switch (alt10) {
            	case 1 :
            	    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1488:2: rule__QualifiedName__Group_1__0
            	    {
            	    pushFollow(FOLLOW_rule__QualifiedName__Group_1__0_in_rule__QualifiedName__Group__1__Impl2951);
            	    rule__QualifiedName__Group_1__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop10;
                }
            } while (true);

             after(grammarAccess.getQualifiedNameAccess().getGroup_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__QualifiedName__Group__1__Impl"


    // $ANTLR start "rule__QualifiedName__Group_1__0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1502:1: rule__QualifiedName__Group_1__0 : rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1 ;
    public final void rule__QualifiedName__Group_1__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1506:1: ( rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1507:2: rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1
            {
            pushFollow(FOLLOW_rule__QualifiedName__Group_1__0__Impl_in_rule__QualifiedName__Group_1__02986);
            rule__QualifiedName__Group_1__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__QualifiedName__Group_1__1_in_rule__QualifiedName__Group_1__02989);
            rule__QualifiedName__Group_1__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__QualifiedName__Group_1__0"


    // $ANTLR start "rule__QualifiedName__Group_1__0__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1514:1: rule__QualifiedName__Group_1__0__Impl : ( '.' ) ;
    public final void rule__QualifiedName__Group_1__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1518:1: ( ( '.' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1519:1: ( '.' )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1519:1: ( '.' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1520:1: '.'
            {
             before(grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0()); 
            match(input,24,FOLLOW_24_in_rule__QualifiedName__Group_1__0__Impl3017); 
             after(grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__QualifiedName__Group_1__0__Impl"


    // $ANTLR start "rule__QualifiedName__Group_1__1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1533:1: rule__QualifiedName__Group_1__1 : rule__QualifiedName__Group_1__1__Impl ;
    public final void rule__QualifiedName__Group_1__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1537:1: ( rule__QualifiedName__Group_1__1__Impl )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1538:2: rule__QualifiedName__Group_1__1__Impl
            {
            pushFollow(FOLLOW_rule__QualifiedName__Group_1__1__Impl_in_rule__QualifiedName__Group_1__13048);
            rule__QualifiedName__Group_1__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__QualifiedName__Group_1__1"


    // $ANTLR start "rule__QualifiedName__Group_1__1__Impl"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1544:1: rule__QualifiedName__Group_1__1__Impl : ( RULE_ID ) ;
    public final void rule__QualifiedName__Group_1__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1548:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1549:1: ( RULE_ID )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1549:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1550:1: RULE_ID
            {
             before(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__QualifiedName__Group_1__1__Impl3075); 
             after(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__QualifiedName__Group_1__1__Impl"


    // $ANTLR start "rule__Application__NameAssignment_1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1566:1: rule__Application__NameAssignment_1 : ( RULE_ID ) ;
    public final void rule__Application__NameAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1570:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1571:1: ( RULE_ID )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1571:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1572:1: RULE_ID
            {
             before(grammarAccess.getApplicationAccess().getNameIDTerminalRuleCall_1_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Application__NameAssignment_13113); 
             after(grammarAccess.getApplicationAccess().getNameIDTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__NameAssignment_1"


    // $ANTLR start "rule__Application__PackageDeclarationsAssignment_3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1581:1: rule__Application__PackageDeclarationsAssignment_3 : ( rulePackageDeclaration ) ;
    public final void rule__Application__PackageDeclarationsAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1585:1: ( ( rulePackageDeclaration ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1586:1: ( rulePackageDeclaration )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1586:1: ( rulePackageDeclaration )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1587:1: rulePackageDeclaration
            {
             before(grammarAccess.getApplicationAccess().getPackageDeclarationsPackageDeclarationParserRuleCall_3_0()); 
            pushFollow(FOLLOW_rulePackageDeclaration_in_rule__Application__PackageDeclarationsAssignment_33144);
            rulePackageDeclaration();

            state._fsp--;

             after(grammarAccess.getApplicationAccess().getPackageDeclarationsPackageDeclarationParserRuleCall_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Application__PackageDeclarationsAssignment_3"


    // $ANTLR start "rule__PackageDeclaration__NameAssignment_1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1596:1: rule__PackageDeclaration__NameAssignment_1 : ( ruleQualifiedName ) ;
    public final void rule__PackageDeclaration__NameAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1600:1: ( ( ruleQualifiedName ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1601:1: ( ruleQualifiedName )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1601:1: ( ruleQualifiedName )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1602:1: ruleQualifiedName
            {
             before(grammarAccess.getPackageDeclarationAccess().getNameQualifiedNameParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleQualifiedName_in_rule__PackageDeclaration__NameAssignment_13175);
            ruleQualifiedName();

            state._fsp--;

             after(grammarAccess.getPackageDeclarationAccess().getNameQualifiedNameParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__NameAssignment_1"


    // $ANTLR start "rule__PackageDeclaration__EntitiesAssignment_3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1611:1: rule__PackageDeclaration__EntitiesAssignment_3 : ( ruleEntity ) ;
    public final void rule__PackageDeclaration__EntitiesAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1615:1: ( ( ruleEntity ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1616:1: ( ruleEntity )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1616:1: ( ruleEntity )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1617:1: ruleEntity
            {
             before(grammarAccess.getPackageDeclarationAccess().getEntitiesEntityParserRuleCall_3_0()); 
            pushFollow(FOLLOW_ruleEntity_in_rule__PackageDeclaration__EntitiesAssignment_33206);
            ruleEntity();

            state._fsp--;

             after(grammarAccess.getPackageDeclarationAccess().getEntitiesEntityParserRuleCall_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PackageDeclaration__EntitiesAssignment_3"


    // $ANTLR start "rule__DataType__NameAssignment_1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1626:1: rule__DataType__NameAssignment_1 : ( RULE_ID ) ;
    public final void rule__DataType__NameAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1630:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1631:1: ( RULE_ID )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1631:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1632:1: RULE_ID
            {
             before(grammarAccess.getDataTypeAccess().getNameIDTerminalRuleCall_1_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__DataType__NameAssignment_13237); 
             after(grammarAccess.getDataTypeAccess().getNameIDTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__DataType__NameAssignment_1"


    // $ANTLR start "rule__Entity__NameAssignment_1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1641:1: rule__Entity__NameAssignment_1 : ( RULE_ID ) ;
    public final void rule__Entity__NameAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1645:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1646:1: ( RULE_ID )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1646:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1647:1: RULE_ID
            {
             before(grammarAccess.getEntityAccess().getNameIDTerminalRuleCall_1_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Entity__NameAssignment_13268); 
             after(grammarAccess.getEntityAccess().getNameIDTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__NameAssignment_1"


    // $ANTLR start "rule__Entity__SuperTypeAssignment_2_1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1656:1: rule__Entity__SuperTypeAssignment_2_1 : ( ( RULE_ID ) ) ;
    public final void rule__Entity__SuperTypeAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1660:1: ( ( ( RULE_ID ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1661:1: ( ( RULE_ID ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1661:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1662:1: ( RULE_ID )
            {
             before(grammarAccess.getEntityAccess().getSuperTypeEntityCrossReference_2_1_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1663:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1664:1: RULE_ID
            {
             before(grammarAccess.getEntityAccess().getSuperTypeEntityIDTerminalRuleCall_2_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Entity__SuperTypeAssignment_2_13303); 
             after(grammarAccess.getEntityAccess().getSuperTypeEntityIDTerminalRuleCall_2_1_0_1()); 

            }

             after(grammarAccess.getEntityAccess().getSuperTypeEntityCrossReference_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__SuperTypeAssignment_2_1"


    // $ANTLR start "rule__Entity__AttributesAssignment_4"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1675:1: rule__Entity__AttributesAssignment_4 : ( ruleAttribute ) ;
    public final void rule__Entity__AttributesAssignment_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1679:1: ( ( ruleAttribute ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1680:1: ( ruleAttribute )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1680:1: ( ruleAttribute )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1681:1: ruleAttribute
            {
             before(grammarAccess.getEntityAccess().getAttributesAttributeParserRuleCall_4_0()); 
            pushFollow(FOLLOW_ruleAttribute_in_rule__Entity__AttributesAssignment_43338);
            ruleAttribute();

            state._fsp--;

             after(grammarAccess.getEntityAccess().getAttributesAttributeParserRuleCall_4_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Entity__AttributesAssignment_4"


    // $ANTLR start "rule__SimpleAttribute__NameAssignment_1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1690:1: rule__SimpleAttribute__NameAssignment_1 : ( RULE_ID ) ;
    public final void rule__SimpleAttribute__NameAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1694:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1695:1: ( RULE_ID )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1695:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1696:1: RULE_ID
            {
             before(grammarAccess.getSimpleAttributeAccess().getNameIDTerminalRuleCall_1_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__SimpleAttribute__NameAssignment_13369); 
             after(grammarAccess.getSimpleAttributeAccess().getNameIDTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__NameAssignment_1"


    // $ANTLR start "rule__SimpleAttribute__TypeAssignment_3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1705:1: rule__SimpleAttribute__TypeAssignment_3 : ( ( rule__SimpleAttribute__TypeAlternatives_3_0 ) ) ;
    public final void rule__SimpleAttribute__TypeAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1709:1: ( ( ( rule__SimpleAttribute__TypeAlternatives_3_0 ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1710:1: ( ( rule__SimpleAttribute__TypeAlternatives_3_0 ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1710:1: ( ( rule__SimpleAttribute__TypeAlternatives_3_0 ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1711:1: ( rule__SimpleAttribute__TypeAlternatives_3_0 )
            {
             before(grammarAccess.getSimpleAttributeAccess().getTypeAlternatives_3_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1712:1: ( rule__SimpleAttribute__TypeAlternatives_3_0 )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1712:2: rule__SimpleAttribute__TypeAlternatives_3_0
            {
            pushFollow(FOLLOW_rule__SimpleAttribute__TypeAlternatives_3_0_in_rule__SimpleAttribute__TypeAssignment_33400);
            rule__SimpleAttribute__TypeAlternatives_3_0();

            state._fsp--;


            }

             after(grammarAccess.getSimpleAttributeAccess().getTypeAlternatives_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleAttribute__TypeAssignment_3"


    // $ANTLR start "rule__RefAttribute__NameAssignment_0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1721:1: rule__RefAttribute__NameAssignment_0 : ( RULE_ID ) ;
    public final void rule__RefAttribute__NameAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1725:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1726:1: ( RULE_ID )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1726:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1727:1: RULE_ID
            {
             before(grammarAccess.getRefAttributeAccess().getNameIDTerminalRuleCall_0_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RefAttribute__NameAssignment_03433); 
             after(grammarAccess.getRefAttributeAccess().getNameIDTerminalRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__NameAssignment_0"


    // $ANTLR start "rule__RefAttribute__RefsAssignment_1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1736:1: rule__RefAttribute__RefsAssignment_1 : ( ( 'refs' ) ) ;
    public final void rule__RefAttribute__RefsAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1740:1: ( ( ( 'refs' ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1741:1: ( ( 'refs' ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1741:1: ( ( 'refs' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1742:1: ( 'refs' )
            {
             before(grammarAccess.getRefAttributeAccess().getRefsRefsKeyword_1_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1743:1: ( 'refs' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1744:1: 'refs'
            {
             before(grammarAccess.getRefAttributeAccess().getRefsRefsKeyword_1_0()); 
            match(input,25,FOLLOW_25_in_rule__RefAttribute__RefsAssignment_13469); 
             after(grammarAccess.getRefAttributeAccess().getRefsRefsKeyword_1_0()); 

            }

             after(grammarAccess.getRefAttributeAccess().getRefsRefsKeyword_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__RefsAssignment_1"


    // $ANTLR start "rule__RefAttribute__OneAssignment_2_0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1759:1: rule__RefAttribute__OneAssignment_2_0 : ( ( 'one' ) ) ;
    public final void rule__RefAttribute__OneAssignment_2_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1763:1: ( ( ( 'one' ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1764:1: ( ( 'one' ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1764:1: ( ( 'one' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1765:1: ( 'one' )
            {
             before(grammarAccess.getRefAttributeAccess().getOneOneKeyword_2_0_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1766:1: ( 'one' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1767:1: 'one'
            {
             before(grammarAccess.getRefAttributeAccess().getOneOneKeyword_2_0_0()); 
            match(input,26,FOLLOW_26_in_rule__RefAttribute__OneAssignment_2_03513); 
             after(grammarAccess.getRefAttributeAccess().getOneOneKeyword_2_0_0()); 

            }

             after(grammarAccess.getRefAttributeAccess().getOneOneKeyword_2_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__OneAssignment_2_0"


    // $ANTLR start "rule__RefAttribute__ManyAssignment_2_1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1782:1: rule__RefAttribute__ManyAssignment_2_1 : ( ( 'many' ) ) ;
    public final void rule__RefAttribute__ManyAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1786:1: ( ( ( 'many' ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1787:1: ( ( 'many' ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1787:1: ( ( 'many' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1788:1: ( 'many' )
            {
             before(grammarAccess.getRefAttributeAccess().getManyManyKeyword_2_1_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1789:1: ( 'many' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1790:1: 'many'
            {
             before(grammarAccess.getRefAttributeAccess().getManyManyKeyword_2_1_0()); 
            match(input,27,FOLLOW_27_in_rule__RefAttribute__ManyAssignment_2_13557); 
             after(grammarAccess.getRefAttributeAccess().getManyManyKeyword_2_1_0()); 

            }

             after(grammarAccess.getRefAttributeAccess().getManyManyKeyword_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__ManyAssignment_2_1"


    // $ANTLR start "rule__RefAttribute__TypeAssignment_3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1805:1: rule__RefAttribute__TypeAssignment_3 : ( ( RULE_ID ) ) ;
    public final void rule__RefAttribute__TypeAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1809:1: ( ( ( RULE_ID ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1810:1: ( ( RULE_ID ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1810:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1811:1: ( RULE_ID )
            {
             before(grammarAccess.getRefAttributeAccess().getTypeEntityCrossReference_3_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1812:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1813:1: RULE_ID
            {
             before(grammarAccess.getRefAttributeAccess().getTypeEntityIDTerminalRuleCall_3_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RefAttribute__TypeAssignment_33600); 
             after(grammarAccess.getRefAttributeAccess().getTypeEntityIDTerminalRuleCall_3_0_1()); 

            }

             after(grammarAccess.getRefAttributeAccess().getTypeEntityCrossReference_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefAttribute__TypeAssignment_3"


    // $ANTLR start "rule__RefByAttribute__NameAssignment_0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1824:1: rule__RefByAttribute__NameAssignment_0 : ( RULE_ID ) ;
    public final void rule__RefByAttribute__NameAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1828:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1829:1: ( RULE_ID )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1829:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1830:1: RULE_ID
            {
             before(grammarAccess.getRefByAttributeAccess().getNameIDTerminalRuleCall_0_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RefByAttribute__NameAssignment_03635); 
             after(grammarAccess.getRefByAttributeAccess().getNameIDTerminalRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__NameAssignment_0"


    // $ANTLR start "rule__RefByAttribute__Ref_byAssignment_1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1839:1: rule__RefByAttribute__Ref_byAssignment_1 : ( ( 'ref_by' ) ) ;
    public final void rule__RefByAttribute__Ref_byAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1843:1: ( ( ( 'ref_by' ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1844:1: ( ( 'ref_by' ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1844:1: ( ( 'ref_by' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1845:1: ( 'ref_by' )
            {
             before(grammarAccess.getRefByAttributeAccess().getRef_byRef_byKeyword_1_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1846:1: ( 'ref_by' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1847:1: 'ref_by'
            {
             before(grammarAccess.getRefByAttributeAccess().getRef_byRef_byKeyword_1_0()); 
            match(input,28,FOLLOW_28_in_rule__RefByAttribute__Ref_byAssignment_13671); 
             after(grammarAccess.getRefByAttributeAccess().getRef_byRef_byKeyword_1_0()); 

            }

             after(grammarAccess.getRefByAttributeAccess().getRef_byRef_byKeyword_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__Ref_byAssignment_1"


    // $ANTLR start "rule__RefByAttribute__OneAssignment_2_0"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1862:1: rule__RefByAttribute__OneAssignment_2_0 : ( ( 'one' ) ) ;
    public final void rule__RefByAttribute__OneAssignment_2_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1866:1: ( ( ( 'one' ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1867:1: ( ( 'one' ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1867:1: ( ( 'one' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1868:1: ( 'one' )
            {
             before(grammarAccess.getRefByAttributeAccess().getOneOneKeyword_2_0_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1869:1: ( 'one' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1870:1: 'one'
            {
             before(grammarAccess.getRefByAttributeAccess().getOneOneKeyword_2_0_0()); 
            match(input,26,FOLLOW_26_in_rule__RefByAttribute__OneAssignment_2_03715); 
             after(grammarAccess.getRefByAttributeAccess().getOneOneKeyword_2_0_0()); 

            }

             after(grammarAccess.getRefByAttributeAccess().getOneOneKeyword_2_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__OneAssignment_2_0"


    // $ANTLR start "rule__RefByAttribute__ManyAssignment_2_1"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1885:1: rule__RefByAttribute__ManyAssignment_2_1 : ( ( 'many' ) ) ;
    public final void rule__RefByAttribute__ManyAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1889:1: ( ( ( 'many' ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1890:1: ( ( 'many' ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1890:1: ( ( 'many' ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1891:1: ( 'many' )
            {
             before(grammarAccess.getRefByAttributeAccess().getManyManyKeyword_2_1_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1892:1: ( 'many' )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1893:1: 'many'
            {
             before(grammarAccess.getRefByAttributeAccess().getManyManyKeyword_2_1_0()); 
            match(input,27,FOLLOW_27_in_rule__RefByAttribute__ManyAssignment_2_13759); 
             after(grammarAccess.getRefByAttributeAccess().getManyManyKeyword_2_1_0()); 

            }

             after(grammarAccess.getRefByAttributeAccess().getManyManyKeyword_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__ManyAssignment_2_1"


    // $ANTLR start "rule__RefByAttribute__TypeAssignment_3"
    // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1908:1: rule__RefByAttribute__TypeAssignment_3 : ( ( RULE_ID ) ) ;
    public final void rule__RefByAttribute__TypeAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1912:1: ( ( ( RULE_ID ) ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1913:1: ( ( RULE_ID ) )
            {
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1913:1: ( ( RULE_ID ) )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1914:1: ( RULE_ID )
            {
             before(grammarAccess.getRefByAttributeAccess().getTypeEntityCrossReference_3_0()); 
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1915:1: ( RULE_ID )
            // ../de.nordakademie.hausarbeit.crudframework.ui/src-gen/de/nordakademie/hausarbeit/crudframework/ui/contentassist/antlr/internal/InternalDomainDsl.g:1916:1: RULE_ID
            {
             before(grammarAccess.getRefByAttributeAccess().getTypeEntityIDTerminalRuleCall_3_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RefByAttribute__TypeAssignment_33802); 
             after(grammarAccess.getRefByAttributeAccess().getTypeEntityIDTerminalRuleCall_3_0_1()); 

            }

             after(grammarAccess.getRefByAttributeAccess().getTypeEntityCrossReference_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RefByAttribute__TypeAssignment_3"

    // Delegated rules


 

    public static final BitSet FOLLOW_ruleApplication_in_entryRuleApplication61 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleApplication68 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Application__Group__0_in_ruleApplication94 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rulePackageDeclaration_in_entryRulePackageDeclaration121 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRulePackageDeclaration128 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__Group__0_in_rulePackageDeclaration154 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleDataType_in_entryRuleDataType183 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleDataType190 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__DataType__Group__0_in_ruleDataType216 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleEntity_in_entryRuleEntity243 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleEntity250 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__Group__0_in_ruleEntity276 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAttribute_in_entryRuleAttribute303 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleAttribute310 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Attribute__Alternatives_in_ruleAttribute336 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimpleAttribute_in_entryRuleSimpleAttribute363 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleSimpleAttribute370 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__Group__0_in_ruleSimpleAttribute396 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleRefAttribute_in_entryRuleRefAttribute423 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleRefAttribute430 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__Group__0_in_ruleRefAttribute456 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleRefByAttribute_in_entryRuleRefByAttribute483 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleRefByAttribute490 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__Group__0_in_ruleRefByAttribute516 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleQualifiedName_in_entryRuleQualifiedName543 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleQualifiedName550 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__QualifiedName__Group__0_in_ruleQualifiedName576 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimpleAttribute_in_rule__Attribute__Alternatives613 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleRefAttribute_in_rule__Attribute__Alternatives630 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleRefByAttribute_in_rule__Attribute__Alternatives647 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_11_in_rule__SimpleAttribute__TypeAlternatives_3_0680 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_12_in_rule__SimpleAttribute__TypeAlternatives_3_0700 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_13_in_rule__SimpleAttribute__TypeAlternatives_3_0720 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__SimpleAttribute__TypeAlternatives_3_0740 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__OneAssignment_2_0_in_rule__RefAttribute__Alternatives_2774 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__ManyAssignment_2_1_in_rule__RefAttribute__Alternatives_2792 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__OneAssignment_2_0_in_rule__RefByAttribute__Alternatives_2825 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__ManyAssignment_2_1_in_rule__RefByAttribute__Alternatives_2843 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Application__Group__0__Impl_in_rule__Application__Group__0874 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Application__Group__1_in_rule__Application__Group__0877 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__Application__Group__0__Impl905 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Application__Group__1__Impl_in_rule__Application__Group__1936 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__Application__Group__2_in_rule__Application__Group__1939 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Application__NameAssignment_1_in_rule__Application__Group__1__Impl966 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Application__Group__2__Impl_in_rule__Application__Group__2996 = new BitSet(new long[]{0x0000000000060000L});
    public static final BitSet FOLLOW_rule__Application__Group__3_in_rule__Application__Group__2999 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Application__Group__2__Impl1027 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Application__Group__3__Impl_in_rule__Application__Group__31058 = new BitSet(new long[]{0x0000000000060000L});
    public static final BitSet FOLLOW_rule__Application__Group__4_in_rule__Application__Group__31061 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Application__PackageDeclarationsAssignment_3_in_rule__Application__Group__3__Impl1088 = new BitSet(new long[]{0x0000000000040002L});
    public static final BitSet FOLLOW_rule__Application__Group__4__Impl_in_rule__Application__Group__41119 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_17_in_rule__Application__Group__4__Impl1147 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__Group__0__Impl_in_rule__PackageDeclaration__Group__01188 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__Group__1_in_rule__PackageDeclaration__Group__01191 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_18_in_rule__PackageDeclaration__Group__0__Impl1219 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__Group__1__Impl_in_rule__PackageDeclaration__Group__11250 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__Group__2_in_rule__PackageDeclaration__Group__11253 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__NameAssignment_1_in_rule__PackageDeclaration__Group__1__Impl1280 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__Group__2__Impl_in_rule__PackageDeclaration__Group__21310 = new BitSet(new long[]{0x0000000000120000L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__Group__3_in_rule__PackageDeclaration__Group__21313 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__PackageDeclaration__Group__2__Impl1341 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__Group__3__Impl_in_rule__PackageDeclaration__Group__31372 = new BitSet(new long[]{0x0000000000120000L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__Group__4_in_rule__PackageDeclaration__Group__31375 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__EntitiesAssignment_3_in_rule__PackageDeclaration__Group__3__Impl1402 = new BitSet(new long[]{0x0000000000100002L});
    public static final BitSet FOLLOW_rule__PackageDeclaration__Group__4__Impl_in_rule__PackageDeclaration__Group__41433 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_17_in_rule__PackageDeclaration__Group__4__Impl1461 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__DataType__Group__0__Impl_in_rule__DataType__Group__01502 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__DataType__Group__1_in_rule__DataType__Group__01505 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_19_in_rule__DataType__Group__0__Impl1533 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__DataType__Group__1__Impl_in_rule__DataType__Group__11564 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__DataType__NameAssignment_1_in_rule__DataType__Group__1__Impl1591 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__Group__0__Impl_in_rule__Entity__Group__01625 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Entity__Group__1_in_rule__Entity__Group__01628 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_20_in_rule__Entity__Group__0__Impl1656 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__Group__1__Impl_in_rule__Entity__Group__11687 = new BitSet(new long[]{0x0000000000210000L});
    public static final BitSet FOLLOW_rule__Entity__Group__2_in_rule__Entity__Group__11690 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__NameAssignment_1_in_rule__Entity__Group__1__Impl1717 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__Group__2__Impl_in_rule__Entity__Group__21747 = new BitSet(new long[]{0x0000000000210000L});
    public static final BitSet FOLLOW_rule__Entity__Group__3_in_rule__Entity__Group__21750 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__Group_2__0_in_rule__Entity__Group__2__Impl1777 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__Group__3__Impl_in_rule__Entity__Group__31808 = new BitSet(new long[]{0x0000000000420010L});
    public static final BitSet FOLLOW_rule__Entity__Group__4_in_rule__Entity__Group__31811 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Entity__Group__3__Impl1839 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__Group__4__Impl_in_rule__Entity__Group__41870 = new BitSet(new long[]{0x0000000000420010L});
    public static final BitSet FOLLOW_rule__Entity__Group__5_in_rule__Entity__Group__41873 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__AttributesAssignment_4_in_rule__Entity__Group__4__Impl1900 = new BitSet(new long[]{0x0000000000400012L});
    public static final BitSet FOLLOW_rule__Entity__Group__5__Impl_in_rule__Entity__Group__51931 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_17_in_rule__Entity__Group__5__Impl1959 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__Group_2__0__Impl_in_rule__Entity__Group_2__02002 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Entity__Group_2__1_in_rule__Entity__Group_2__02005 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_21_in_rule__Entity__Group_2__0__Impl2033 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__Group_2__1__Impl_in_rule__Entity__Group_2__12064 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Entity__SuperTypeAssignment_2_1_in_rule__Entity__Group_2__1__Impl2091 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__Group__0__Impl_in_rule__SimpleAttribute__Group__02125 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__Group__1_in_rule__SimpleAttribute__Group__02128 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_22_in_rule__SimpleAttribute__Group__0__Impl2156 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__Group__1__Impl_in_rule__SimpleAttribute__Group__12187 = new BitSet(new long[]{0x0000000000800000L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__Group__2_in_rule__SimpleAttribute__Group__12190 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__NameAssignment_1_in_rule__SimpleAttribute__Group__1__Impl2217 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__Group__2__Impl_in_rule__SimpleAttribute__Group__22247 = new BitSet(new long[]{0x0000000000007800L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__Group__3_in_rule__SimpleAttribute__Group__22250 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_23_in_rule__SimpleAttribute__Group__2__Impl2278 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__Group__3__Impl_in_rule__SimpleAttribute__Group__32309 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__TypeAssignment_3_in_rule__SimpleAttribute__Group__3__Impl2336 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__Group__0__Impl_in_rule__RefAttribute__Group__02374 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_rule__RefAttribute__Group__1_in_rule__RefAttribute__Group__02377 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__NameAssignment_0_in_rule__RefAttribute__Group__0__Impl2404 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__Group__1__Impl_in_rule__RefAttribute__Group__12434 = new BitSet(new long[]{0x000000000C000000L});
    public static final BitSet FOLLOW_rule__RefAttribute__Group__2_in_rule__RefAttribute__Group__12437 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__RefsAssignment_1_in_rule__RefAttribute__Group__1__Impl2464 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__Group__2__Impl_in_rule__RefAttribute__Group__22494 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__RefAttribute__Group__3_in_rule__RefAttribute__Group__22497 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__Alternatives_2_in_rule__RefAttribute__Group__2__Impl2524 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__Group__3__Impl_in_rule__RefAttribute__Group__32554 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefAttribute__TypeAssignment_3_in_rule__RefAttribute__Group__3__Impl2581 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__Group__0__Impl_in_rule__RefByAttribute__Group__02619 = new BitSet(new long[]{0x0000000010000000L});
    public static final BitSet FOLLOW_rule__RefByAttribute__Group__1_in_rule__RefByAttribute__Group__02622 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__NameAssignment_0_in_rule__RefByAttribute__Group__0__Impl2649 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__Group__1__Impl_in_rule__RefByAttribute__Group__12679 = new BitSet(new long[]{0x000000000C000010L});
    public static final BitSet FOLLOW_rule__RefByAttribute__Group__2_in_rule__RefByAttribute__Group__12682 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__Ref_byAssignment_1_in_rule__RefByAttribute__Group__1__Impl2709 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__Group__2__Impl_in_rule__RefByAttribute__Group__22739 = new BitSet(new long[]{0x000000000C000010L});
    public static final BitSet FOLLOW_rule__RefByAttribute__Group__3_in_rule__RefByAttribute__Group__22742 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__Alternatives_2_in_rule__RefByAttribute__Group__2__Impl2769 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__Group__3__Impl_in_rule__RefByAttribute__Group__32800 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RefByAttribute__TypeAssignment_3_in_rule__RefByAttribute__Group__3__Impl2827 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__QualifiedName__Group__0__Impl_in_rule__QualifiedName__Group__02865 = new BitSet(new long[]{0x0000000001000000L});
    public static final BitSet FOLLOW_rule__QualifiedName__Group__1_in_rule__QualifiedName__Group__02868 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__QualifiedName__Group__0__Impl2895 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__QualifiedName__Group__1__Impl_in_rule__QualifiedName__Group__12924 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__QualifiedName__Group_1__0_in_rule__QualifiedName__Group__1__Impl2951 = new BitSet(new long[]{0x0000000001000002L});
    public static final BitSet FOLLOW_rule__QualifiedName__Group_1__0__Impl_in_rule__QualifiedName__Group_1__02986 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__QualifiedName__Group_1__1_in_rule__QualifiedName__Group_1__02989 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_24_in_rule__QualifiedName__Group_1__0__Impl3017 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__QualifiedName__Group_1__1__Impl_in_rule__QualifiedName__Group_1__13048 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__QualifiedName__Group_1__1__Impl3075 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Application__NameAssignment_13113 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rulePackageDeclaration_in_rule__Application__PackageDeclarationsAssignment_33144 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleQualifiedName_in_rule__PackageDeclaration__NameAssignment_13175 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleEntity_in_rule__PackageDeclaration__EntitiesAssignment_33206 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__DataType__NameAssignment_13237 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Entity__NameAssignment_13268 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Entity__SuperTypeAssignment_2_13303 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAttribute_in_rule__Entity__AttributesAssignment_43338 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__SimpleAttribute__NameAssignment_13369 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__SimpleAttribute__TypeAlternatives_3_0_in_rule__SimpleAttribute__TypeAssignment_33400 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__RefAttribute__NameAssignment_03433 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_25_in_rule__RefAttribute__RefsAssignment_13469 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_26_in_rule__RefAttribute__OneAssignment_2_03513 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_27_in_rule__RefAttribute__ManyAssignment_2_13557 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__RefAttribute__TypeAssignment_33600 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__RefByAttribute__NameAssignment_03635 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_28_in_rule__RefByAttribute__Ref_byAssignment_13671 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_26_in_rule__RefByAttribute__OneAssignment_2_03715 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_27_in_rule__RefByAttribute__ManyAssignment_2_13759 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__RefByAttribute__TypeAssignment_33802 = new BitSet(new long[]{0x0000000000000002L});

}